单片机STM32
STM32相关技术
91-树先生
15622662206
展开
-
八:FreeRTOS队列
队列简介队列是为了任务与任务,任务与中断之间的通信而准备的,可以在任务与任务,任务与中断之间传递消息,队列中可以存储有限的/大小固定的数据项目。任务与任务,任务与中断之间要交流的数据保存在队列中,叫做队列项目。队列所能保存的最大数据项目数量叫做队列长度,创建队列的时候会指定数据项目的大小和队列的长度。由于队列用来传递消息的,所以也成为消息队列。FreeRTOS中的信号量也是依据队列实现的。队列操作函数xQueueCreate() //创建队列(动态方法)xQueueCreateStatic(原创 2021-01-28 20:02:14 · 329 阅读 · 1 评论 -
七:FreeRTOS临界段代码保护
临界段代码保护简介临界段代码也叫做临界区,是指那些必须完整运行,不能被打断的代码段,比如有的外设的初始化需要严格的时许,初始化过程中不能被打断。FreeRTOS在进入临界段代码的时候需要关闭中断,当处理完临界段代码以后再打开中断。FreeRTOS系统本身就有很多的临界段代码,这些代码斗加了临界段代码保护,我们在写自己的用户程序的时候有些地方也需要添加临界段代码保护。...原创 2021-01-28 14:27:29 · 362 阅读 · 0 评论 -
六:FreeRTOS任务查询和信息统计/任务运行时间统计
char InfoBuffer[1000]; //保存信息的数组函数vTaskList()的使用 printf("/*************第三步:函数vTaskList()的使用*************/\r\n"); vTaskList(InfoBuffer); //获取所有任务的信息 printf("%s\r\n",InfoBuffer); ...原创 2021-01-28 09:34:14 · 408 阅读 · 0 评论 -
五:FreeRTOS列表与列表项
列表和列表项是FreeeRTOS的一个数据结构,FreeRTOS大量使用到了列表与列表项,它是FreeRTOS的基石。列表和列表项和链表类似,都有插入和删除操作列表:列表是FreeRTOS中的一个数据结构,概念上和链表有点类似,列表被用来跟踪FreeRTOS中的任务。列表结构为List_ttypedef struct xLIST{ listFIRST_LIST_INTEGRITY_CHECK_VALUE /*< Set to a known value if conf.原创 2021-01-27 18:56:25 · 159 阅读 · 0 评论 -
四:FreeRTOS中断
STM32中断优先级分组FreeRTOS推荐使用中断优先级分组4,也就是全部4位用来表示抢占优先级,共0~15抢占优先级(STM32只能使用图中红色字体的中断优先级分组,并且只使用高4位)NVIC_PriorityGroupConfig(NVIC_PriorityGroup_4);//设置系统中断优先级分组4分组位置 抢占优先级 子优先级 0 无 /0 7:4 /4 1 7:7 /1 ...原创 2021-01-27 16:03:10 · 396 阅读 · 0 评论 -
三:FreeRTOS任务挂起和恢复
任务挂机和恢复API函数如下vTaskSuspend() //挂起一个任务vTaskResume() //恢复一个任务的运行xTaskResumFromISR() //中断服务函数中恢复一个任务的运行原创 2021-01-27 11:39:59 · 189 阅读 · 0 评论 -
二:FreeROTS基础概念/任务创建和删除
INCLUDE_ 开始的宏使用"INCLUDE_“开始的宏用来表示使能或除能FreeRTOS中相应的API函数,作用就是用来配置FreeRTOS中的可选API函数。如: INCLUDE_vTaskPrioritySet表示使能函数vTaskPrioritySet()原创 2021-01-27 08:27:58 · 505 阅读 · 1 评论 -
一:FreeRTOS移植(stm32f407)
#include <stdio.h>int main(void){ printf("hello world!\n");}原创 2021-01-27 06:21:33 · 261 阅读 · 0 评论