1.在最近的嵌入式工作中很多都是学习FreeRTOS系统,由于只是会对RTOS的接口进行调用,但是很多时候都是知其然而不知其所以然,所以现在对API进行总结。
2.首先还是从main函数入口,main()函数创建任务,然后启动调度器
大概的格式如下:
3.在 FreeRTOS 中,多线程被称为多任务,在这里任务可以看得和线程相同。(其实并不相同)
首先创建任务的接口:
如:
调用的函数demo如下:
上面是对两个接口的简单介绍,下面是注意的事项。
(1):每个任务的执行必要要有延时,如果没有延时,那么会出现单个任务一直占用CPU的现象。比如说下面的代码逻辑就会出现一直在运行任务一的现象;
(2)由于多任务是使用的时间片轮转的方式调用,如果优先级高的任务占用的时间片过多,那么低优先级的任务会出现饿死状态。
(3)(3)时间片的长度通过心跳中断的频率进行设定,心跳中断频率由FreeRTOSConfig.h 中的编译时配置常量 configTICK_RATE_HZ 进行配置。比如说,如果 configTICK_RATE_HZ 设为 10(HZ),则时间片长度为 100ms
(4)优先级是在FreeRTOS是可以通过调用API进行修改的。
-
嵌入式
+关注
关注
5082文章
19104浏览量
304802 -
API
+关注
关注
2文章
1499浏览量
61962 -
FreeRTOS
+关注
关注
12文章
484浏览量
62139
原文标题:嵌入式FreeRTOS系统接口调用API总结
文章出处:【微信号:gh_c472c2199c88,微信公众号:嵌入式微处理器】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论