跑马灯变形记程序介绍(五)
时间:04-21 15:18 阅读:589次
*温馨提示:点击图片可以放大观看高清大图
简介:通过利用程序实例的方式介绍了跑马灯变形记程序的变化及规范的写法
变 无 止 境
经历前面的四次变形,应该说,跑马灯这棵小树苗,也算根红苗正了。具备了向上继续生长的条件,长歪掉的可能性较低。因此我们可以进一步拓展其功能。
1)增加一个按键,控制跑马灯的启动和停止。这个时候,有按键抖动滤波、译码和事件传递需要考虑。
2)增加一个串口通讯,敲入不同的命令,实现不同的动作。如下
命令字符串
实现功能
left2right
从左到右闪烁
right2left
从右到左闪烁
stop
停止
这个时候,需要考虑串口的字节流如何截止,使变成一串命令。又如何告诉串口的使用者:包接受完成,请取包分析?
3) 灯,只是一个商业系统里面,最最简单的控制,尚且如此讲究。如果加上一些基本的标配:Lcd,蜂鸣器、矩阵扫描按键,系统又该如何构建?
4)随着系统的日益变大,当main模块while(1)里面代码的运行时间超过LIGHT_INTERVAL_TIME时,跑马灯的间隔控制将会出现较大的时间误差,请问如何避免这个情况。
这些,都是在构建嵌入式系统过程中常会遇到的问题,但对于没有经验的工程师来说,往往会感到阵阵无力与彷徨,难以兼顾系统的稳定性、可维护性和运行效率。
最常见的是:遍地的全局变量交叉混杂、到处的while(1)和看门狗、直入骨髓的if判断陷阱、心力交瘁的依赖关系。
整个系统处于一种“神秘的稳定状态”,