上QQ阅读APP看书,第一时间看更新
1.2 前后台软件架构
因为MCU51刚普及,Keil-C51也刚开始接触,根本没有所谓的架构概念,往往都是基于评估板提供的一些子函数、一个个例子程序的学习,之后基于书本的一些功能介绍,本能的组织程序,综合起来可以分为四种类型:大循环扫描类型、中断触发类型、节拍触发类型、综合性类型,统称为前后台架构。
节拍也是一种中断,往往是由定时器产生的固定时间间隔的中断,比如间隔10ms一次中断,利用这个节拍可以实现很多例行处理,比如,按键扫描获取按键值、多路数码管轮流显示刷新、传感器扫描检测等。可以认为节拍是一个特殊的中断,相比其他中断一般不是固定时间间隔的,往往取决于这个中断设备,具有随机特性。在ARM的Cortex系列处理器中,专门为节拍提供了一路专用的定时器,叫Systick,与普通中断以示区别,考虑到它的特殊性,所以把节拍独立出来。
前三点可以认为是前后台架构的三要素,综合性类型是指有包含三要素中的两种或者三种构成的软件架构类型,它是最常见的前后台架构类型。因为前后台架构没有引入任务切换功能,简单、易用,俗称“裸奔”。因为中断、节拍接收事件信息在前,大循环处理事件在后,这就是前后台名字的由来。