欢迎光临散文网 会员登陆 & 注册

FreeRTOS 任务 定义

2022-11-13 17:11 作者:GXTon_阿通  | 我要投稿

参考野火视频第7章

1,学习rtos的初步目标

2,任务相关知识的介绍

3,实现创建任务

4,实现就绪列表

比如点亮两个灯.让两个灯以不同频率闪烁.

在裸机程序中,红灯和绿灯,亮灯的闪烁可能混在一起编写.共用一个定时器.
然后可能需要考虑两者之间的影响.它们可能用了共同的变量.需要商量好怎么编写实现.
两个灯可能是用的同一个时间轴,你需要考虑什么时间点亮红灯,什么时间点亮绿灯.....
如果有更多的灯,就会相当麻烦,需要根据时间轴,考虑不同时间什么事件需要触发,并且怎样不会影响其他任务...

但是有了操作系统,红灯和绿灯就更加的独立.
可以让两个人编写,一个人编写红灯程序,一个人编写绿灯程序.
两个人不用商量,按照各自的思路编写.即时用的不同实现方法也没有影响.
因为红灯和绿灯将来会添加到FreeRTOS的两个不同任务中.
实现两个任务的共同运行.

任务:如上面示例中提到的,红灯和绿灯就是两个任务.在程序中就是相当于两个"主函数".
任务控制块:(相当于任务的身份证)里面有任务的所有信息: 栈指针,任务名称,任务的形参...
涉及到的数据类型在task.c中.对任务的全部操作,都可以通过它进行,所以很重要.
,任务栈:

通过任务控制块,
可以把任务挂接在不同的链表当中.

定义


FreeRTOS 任务 定义的评论 (共 条)

分享到微博请遵守国家法律