YFROBOT创客社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3348|回复: 0
打印 上一主题 下一主题

转帖: 跑马灯变形记(六)

[复制链接]

签到天数: 9 天

[LV.3]偶尔看看II

跳转到指定楼层
楼主
发表于 2014-12-27 08:27:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 雷柏 于 2014-12-27 08:29 编辑

本帖转自:http://bbs.21ic.com
变 无 止 境

经历前面的四次变形,应该说,跑马灯这棵小树苗,也算根红苗正了。具备了向上继续生长的条件,长歪掉的可能性较低。因此我们可以进一步拓展其功能。

1)  增加一个按键,控制跑马灯的启动和停止。这个时候,有按键抖动滤波、译码和事件传递需要考虑。

2)  增加一个串口通讯,敲入不同的命令,实现不同的动作。如下


命令字符串
实现功能
left2right
从左到右闪烁
right2left
从右到左闪烁
stop
停止

这个时候,需要考虑串口的字节流如何截止,使变成一串命令。又如何告诉串口的使用者:包接受完成,请取包分析?
3) 灯,只是一个商业系统里面,最最简单的控制,尚且如此讲究。如果加上一些基本的标配:Lcd,蜂鸣器、矩阵扫描按键,系统又该如何构建?
4)  随着系统的日益变大,当main模块while(1)里面代码的运行时间超过LIGHT_INTERVAL_TIME时,跑马灯的间隔控制将会出现较大的时间误差,请问如何避免这个情况。
这些,都是在构建嵌入式系统过程中常会遇到的问题,但对于没有经验的工程师来说,往往会感到阵阵无力与彷徨,难以兼顾系统的稳定性、可维护性和运行效率。
最常见的是:遍地的全局变量交叉混杂、到处的while(1)和看门狗、直入骨髓的if判断陷阱、心力交瘁的依赖关系。
整个系统处于一种“神秘的稳定状态”,
你会敬之畏之,继而离职,下任更快离职,继而瘫痪
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 支持支持 反对反对
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|联系我们|YFROBOT ( 苏ICP备20009901号-2  

GMT+8, 2024-11-23 16:11 , Processed in 0.046265 second(s), 24 queries .

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表