消灭BUG
上一节
下一节
针对上节案例调试出现按键抖动的BUG,我们也利用显示的定时间隔时间去做按键扫描,比如每50个毫秒做一次按键的检测,在定时中断程序里安排一个计数变量对进入定时中断的次数计数,这样每十次中断到了就表示50毫秒到了,然后立一个标志位,在while(1)循环中就根据这个标志位来确定是否安排做按键的检测。这个方法把按键检测和八段数码管的切换显示整合使用了同一个定时器。其实这才是笔者设计这个应用案例的真正目的,通过这个案例告诉大家,单片机的内部资源诸如定时器、中断等是非常宝贵的,尤其是将来系统功能更加复杂和综合,对这类资源要加以综合有效的利用。请大家结合上述思路先动手设计开发程序,然后观看本节视频讲解并做分析和总结。
在案例讲解中,我们还提到了针对P2口进行位控切换的移位方法,使得程序更为简洁。所以当一个系统开发完成后,我们不要满足现状,及时地做些总结和分析,可以继续优化提高,这样我们的水平会增进很快,储备的解决方案也会更多。

