单片机软件架构学习笔记

一、概述
常用单片机软件架构大体分三种:
1. 前后台顺序执行程序
2. 时间片轮询法
3. 操作系统

二、前后台顺序执行程序
所谓的前台,就是主动去判断处理某个事务,这个是主循环里要做的事,也就是你代码主要要写的。所谓的后台,指的是:中断,也就是不需要你的CPU去判别,就会自动进入某一种状态,你在这个状态下做你要做的事就可以了。主要结构:mian - while - 中断。
单片机软件架构学习笔记_第1张图片
单片机软件架构学习笔记_第2张图片

单片机软件架构学习笔记_第3张图片

个人觉得,这种方式写程序思路必须清晰,写出的程序容易按顺序读懂。一般用于小型、固定功能的项目较为适合。

三、时间片轮询法
时间片轮询法的本质是利用定时器分频切换任务,能灵活地添加任务(新功能)到项目中,且不用占用像系统那么多的代码空间。其设计过程如下:
单片机软件架构学习笔记_第4张图片

单片机软件架构学习笔记_第5张图片

单片机软件架构学习笔记_第6张图片

单片机软件架构学习笔记_第7张图片

单片机软件架构学习笔记_第8张图片

四、操作系统
列如:UCOSII、FreeRTOS等等。个人认为,相较其余两种架构,使用系统架构方式的优势在于能任务之间能灵活切换、实时监测芯片CPU等信息,但所需芯片内存较大。其任务切换原理主要结合不同芯片中断而定。列如:STM32利用Pend、SVN中断异常处理任务切换。

你可能感兴趣的:(STM32)