![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
freertos
JIAlonglong11
就是玩
展开
-
FreeRTOS的列表和列表项
其实经过前面三章的学习,基本的freertos操作便已经可以掌握了。但是在任务的创建的时候,难免会遇到有关列表和列表项的问题例如:任务的状态和事件以及调度1.为什么要学?这是看懂freertos的基石2.what is 列表和列表项?列表是freertos的数据结构,在概念上与链表类似,列表可以用来跟踪FreeRTOS中的任务。与列表有关的东西全部都在文件list.c和list.h中。在list.h中定义了一个叫做List_t的结构体其中1和5,这两个都是用来检查列表完整性的。需要将configUSE原创 2022-06-09 01:38:58 · 293 阅读 · 0 评论 -
FreeRTOS中断
FreeRTOS中断中断的寄存器:NVIC(Cortex-M内核的MCU)和SCB中特殊寄存器:(在FreeRTOSConfig.h)1.PRIMASKPRIMASK:当需要暂时屏蔽所有中断执行一些对时序要求严格的任务,这个时候就可以使用PRIMASK寄存器//使用CPSCPSIE I;//使能PRIMASK中断CPSID I;//禁止PRIMASK中断//通过MRS和MSR指令访问MOVS R0, #1MSR PRIMASK, R0;//将1写入PR原创 2022-05-31 00:32:46 · 669 阅读 · 0 评论 -
freertos学习笔记2
任务的挂起与恢复相关API函数:(使用对应函数要去修改宏对应的值)1.vTaskSuspend(): 挂起任务2.vTaskResume():恢复任务运行3.vTaskResumeFromISR():中断服务函数中恢复一个任务的运行那么问题来了,为什么我们不能像上节那样用删除再创建来控制任务的运行呢?原因其实很明显,不仅是写代码变得冗杂,而且删除任务这个操作,会把之前任务的堆载删除,然后后面想运行这个任务就找不到了。但是如果只是挂起,它的任务堆载及其数据都是有效的。我们来链接原创 2022-05-28 13:51:22 · 456 阅读 · 1 评论 -
freertos学习笔记一
Freertos个人学习笔记,可能会有纰漏,希望读者能够指出,谢谢。原创 2022-05-27 17:17:01 · 506 阅读 · 2 评论