![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STM32
文章平均质量分 90
Asita_c
属实被自己菜哭了
展开
-
多优先级(笔记)
从最高优先级对应的就绪列表数组下标开始寻找当前链表下是否有任务存在,如果没有,则uxTopPriority减一操作,继续寻找下一个优先级对应的链表中是否有任务存在,如果有则跳出while循环,表示找到了最高优先级的就绪任务。就绪列表是一个数组,数组里面存的是对应就绪任务的TCB的xStateListItem节点,数组下标对应任务的优先级,优先级越低,对应数组下标的数字越小。例子,如图所示,该变量的前导零的个数为6。中定义的静态变量,用于表示创建的任务的最高优先级,默认初始化为0,即空闲任务的优先级。原创 2023-05-12 11:31:18 · 559 阅读 · 0 评论 -
FreeRTOS中的空闲任务与阻塞延时(笔记)
软件延时是让CPU等待达到延时效果。而RTOS的优势是可以充分发挥CPU的性能,永远不会让CPU闲着。RTOS中的延时叫做阻塞延时/* 获取空闲任务的内存 */ StackType_t IdleTaskStack [ configMINIMAL_STACK_SIZE ];在FeeRTOSConfig.h中定义的宏# define configMINIMAL_STACK_SIZE((unsigned short) 128) //(字,即512个字节)原创 2023-05-05 23:33:42 · 1659 阅读 · 0 评论 -
FreeRTOS中临界段的保护(笔记)
临界段是指在执行时不能被中断的代码段。在FreeRTOS中,临界段最经常出现的地方就是对全局变量的操作。Q1:什么情况下临界段会被打断?系统调度和外部中断。在FreeRTOS中,系统调度最终也是产生PendSV中断,在PendSVHandler中实现任务的切换,所以还是归结为中断。FreeRTOS对临界段的保护就是对中断的开和关的控制。原创 2023-04-17 15:09:20 · 670 阅读 · 0 评论 -
FreeRTOS中的任务与任务切换(笔记)
FreeRTOS中的任务调用与任务切换原创 2023-04-11 00:39:05 · 1661 阅读 · 1 评论 -
FreeRTOS中的列表与列表项(笔记)
FreeRTOS中与链表相关的操作均在list.h和list.c这两个文件中实现。其中,xLIST_ITEM 是在portmacro.h 中重新定义的数据类型。在FreeRTOS中,列表类似于c语言中的链表,列表项对应c语言中的节点。与c语言中双链表的节点插入类似。原创 2023-04-10 16:47:56 · 427 阅读 · 0 评论 -
毕业设计——基于STM32的家庭健康监测系统
这是本科时的毕业设计,想着之后读研了,研究方向是机器学习了,可能不会这么再碰32或者51之类的板子了,就想趁着还没有忘记就来梳理一下,纪念陪伴了我两年的硬件朋友们,也作为一个足迹。基于STM32的家庭健康监测系统该设计是主要功能如下:(1) 实时的采集心率、温度、烟雾浓度等信息;(2) 实时的显示心电图以及温度数值信息;(3) 实现跌倒的判断,并且在跌倒时发出报警;(4) 实现吸烟警告,在吸烟时发出报警;(5) 实现将温度、心率、姿态解算数据、烟雾浓度等发送至云平台;原创 2021-08-15 19:12:55 · 77780 阅读 · 189 评论