G
N
I
D
A
O
L

02 2022 档案

摘要:使用软件:IAR FOR STM8 编程方式:固件库 硬件配套:STM8S105C6T6实验板 1 配置蓝牙 使用 USB-TTL 模块与 HC-05 蓝牙模块连接(左为 USB 转 TTL,右为蓝牙模块): 3V3-->VCC TXD-->RXD RXD-->TXD GND-->GND 按下蓝牙模 阅读全文
posted @ 2022-02-28 22:16 漫舞八月(Mount256) 阅读(390) 评论(0) 推荐(0)
摘要:由于中景园电子给出的例程不够全面,因此特地花时间重新整理了一下代码,并加上了其他的功能。本文记录了使用模拟四线 SPI 协议驱动 OLED 的代码。 使用软件:IAR FOR STM8 编程方式:固件库 硬件配套:STM8S105C6T6实验板 字模软件:PCtoLCD2002 图片转位图(bmp) 阅读全文
posted @ 2022-02-27 14:45 漫舞八月(Mount256) 阅读(690) 评论(0) 推荐(0)
摘要:一本比较适合对计算机零认识的人看的科普书,因为很简单,我们快速读完,并完成了这篇测试笔记,该笔记提取了我们认为值得了解的要点。 第 5 章 内存和磁盘的亲密关系 5.4 节约内存的编程方法 (1)通过 DLL 文件实现函数共用 DLL(Dynamic Link Library)文件:在程序运行时可以 阅读全文
posted @ 2022-02-19 21:10 漫舞八月(Mount256) 阅读(123) 评论(0) 推荐(0)
摘要:前排提示:本笔记参考了野火PPT的大部分内容。 STM32F103系列有8个定时器,其中分为2个高级定时器,4个通用定时器、2个基本定时器。 下面为高级定时器TIM功能框图(来自野火PPT),由于高级定时器功能相当复杂,因此本文将大篇幅介绍每种功能(定时、输入捕获、输出比较、刹车输入)。我们将功能框 阅读全文
posted @ 2022-02-18 22:25 漫舞八月(Mount256) 阅读(3389) 评论(2) 推荐(0)
摘要:浅析 IA-32 架构的分页机制和中断机制 本文所涉及的知识可以从《x86汇编语言:从实模式到保护模式》的第 16 章-第 17 章找到。 1 分页机制 在分页模式下,4GB 内存被分为大小相同(4KB)的页,操作系统内核为每个任务创建一个虚拟内存空间(只要不超过 4GB 大小)。 1.1 页目录( 阅读全文
posted @ 2022-02-16 16:04 漫舞八月(Mount256) 阅读(538) 评论(0) 推荐(0)
摘要:参考内容:《[野火]uCOS-III内核实现与应用开发实战指南——基于STM32》第 15、16 和 21 章。 从本文开始,是 uCOS 的 API 应用。 1 任务状态 在 uCOS 中,任务状态分为以下几种,任务就是在这几种状态中来回变化的: 就绪(OS_TASK_STATE_RDY):该任务 阅读全文
posted @ 2022-02-15 11:53 漫舞八月(Mount256) 阅读(448) 评论(0) 推荐(0)
摘要:参考内容:《[野火]uCOS-III内核实现与应用开发实战指南——基于STM32》第 14 章。 0 时间片轮转调度的意义 我们现在实现的 uCOS 内核,包含了就绪列表和时基列表。就绪列表的插入规则与优先级有关,而时基列表的插入规则与时基计数器和延时时间有关。上一篇文章中,已经实现了时基列表的任务 阅读全文
posted @ 2022-02-14 22:33 漫舞八月(Mount256) 阅读(844) 评论(0) 推荐(0)
摘要:参考内容:《[野火]uCOS-III内核实现与应用开发实战指南——基于STM32》第 13 章。 1 数据类型定义和宏定义 1.1 时基列表相关宏定义和全局变量(os_cfg_app.h/c & os.h) 在 os_cfg_app.h 中,宏定义时基列表的大小,其推荐值为任务数/4,推荐使用质数, 阅读全文
posted @ 2022-02-13 11:50 漫舞八月(Mount256) 阅读(506) 评论(0) 推荐(1)
摘要:参考内容:《[野火]uCOS-III内核实现与应用开发实战指南——基于STM32》第 12 章。 本篇内容主要是对过往函数的一些修改,因此,一些细节将不会赘述。 0 数据类型定义和宏定义 0.1 临界段宏定义(os.h) #define OS_CRITICAL_ENTER() CPU_CRITICA 阅读全文
posted @ 2022-02-12 20:45 漫舞八月(Mount256) 阅读(202) 评论(0) 推荐(0)
摘要:参考内容:《[野火]uCOS-III内核实现与应用开发实战指南——基于STM32》第 11 章。 1 就绪列表和任务控制块的定义(os.h) 1.1 任务控制块链表 OS_TCB 在定义就绪列表之前,先修改一下 TCB 的内容。 TCB 是一条双向链表,每个节点都包含以下内容: 任务栈指针 StkP 阅读全文
posted @ 2022-02-11 12:28 漫舞八月(Mount256) 阅读(212) 评论(0) 推荐(0)
摘要:参考内容:《[野火]uCOS-III内核实现与应用开发实战指南——基于STM32》第 11 章。 1 优先级表的定义 OSPrioTbl(os_prio.c) 在文件 os_prio.c 中定义优先级表,它是一个数组: CPU_DATA OSPrioTbl[OS_PRIO_TBL_SIZE]; /* 阅读全文
posted @ 2022-02-08 16:29 漫舞八月(Mount256) 阅读(443) 评论(1) 推荐(1)
摘要:喜气洋洋过虎年!祝各位明年会有更大的进步! 参考内容:《[野火]uCOS-III内核实现与应用开发实战指南——基于STM32》第 10 章。 1 临界段 临界段,又叫做临界区。对于多线程而言,它是一段不可分割、不可上下文切换的代码。对于 uCOS 而言,它是一段不可被中断的代码。临界段是不能被中断的 阅读全文
posted @ 2022-02-01 20:34 漫舞八月(Mount256) 阅读(238) 评论(0) 推荐(0)