嵌进式3大框架
3种常用的软件架构有:顺序执行的前后台系统、时间片轮询系统和多任务操作系统。
2.1顺序执行的前后台系统
在顺序执行的前后台系统中,我会把键盘扫描用查询的方式放在while(1)中,而展示屏刷新和超声波测距使用中断,在中断服务函数中获取测量距离后进行展示,在主函数的循环中进行按键的检测,声光处理也放在主循环中。这样整个程序就以变量标志的同步方式在主循环和后台中断中执行。
2.2时间片轮询系统和多任务操作系统
时间片轮询法实际上一般出现在操作系统中,也就是说他属于操作系统,但在这里所说的是基于前后台系统的时间片轮询。时间片轮询法的实质其实就是选出1个定时器,没进1次定时中断对计数值进行自加,在主循环中依据这个计数值执行任务,这个计数值也就是任务轮询的时间片。
2.3多任务操作系统
操作系统的本身是1个比较复杂的东西,任务的治理和调度实现的底层是很复杂和困难的。但是呢,我们1般都是把操作系统本身作为1个工具1个平台,我们的目标是使用它的功能而不是开发1个操作系统。
我使用过ucos和freertos小型的实时操作系统,也使用过Linux大型的操作系统,有了操作系统,不管是对于程序的稳定性和开发的效率都会好很多。我们在使用操作系统的时候更多的需要往学习和理解它的1些调度和通信的方式。
实际上真正能使用操作系统的人并不多,反而是跑裸机的占大多数,这也和产品的具体要求有关,很多简单的系统只需要裸机就可以称心。
0