没有操作系统的日子-starter使用手册
没有操作系统的日子,你还记得吗?让我们回忆一下前面我们一起研究过的那个有趣的小程序吧。它的功能可是让你按下按键就能控制数码管上显示的数据,每当一个按键按下时,数码管上的数据值就会加1,而另一个按键按下时,数据值则会减1。这是不是很神奇?硬件电路图如图15-1所示。这个电路我们之前已经分析过了,这里就不再重复了。
- 硬件电路设计
看看这个硬件电路吧:1, 2, 3, 4, 5, 6, 7, a, b, c, d, e, f, g, 8, dp, 9, 10, 11, 12, COM1, COM2, COM3, COM4, U2, 1, 2, 3, 4, 5, 6, 7, a, b, c, d, e, f, g, 8, dp, 9, 10, 11, 12, COM1, COM2, COM3, COM4, U3, Q18550, Q2, Q3, Q4, 8550, Q5, Q6, Q7, Q8, 8550, 8, 7, 6, 5, 4, 3, 2, 19, 4.7k, R9, 470, R8, R7, R6, R5, R4, R3, R2, R16, R17, R15, R14, R13, R12, R11, 4.7k, R10, +5, 10K, +5, P0.0, 39, P0.1, 38, P0.2, 37, P0.3, 36, P0.4, 35, P0.5, 34, P0.6, 33, P0.7, 32, P2.7, 28, P2.6, 27, P2.5, 26, P2.4, 25, P2.3, 24, P2.2, 23, P2.1, 22, P2.0, 21, P1.45, P1.56, P1.67, P1.78, RST9, GND, 20, VCC, 40, X218, X119, EA, 31, U1, 89S51, C3, 10uF, R1, 10K, +5, C1, 30pF, C2, 30pF, Y1, 12M, K1, K2, K3, K4。这些复杂的组件共同构成了我们的按键控制数码管显示的硬件电路。你能想象这些电路是如何协同工作的吗?
- 软件设计思想
软件流程图如图15-2所示,程序主要包括四部分:初始化、按键子程序、除法子程序和显示子程序。初始化部分主要是给计数器变量count赋初始值0。主程序中的按键程序、除法程序和显示程序无限循环执行。如果有按键按下则在按键子程序中更新count中的数据;在每次执行除法子程序时都将新count中的数据的千位、百位、十位和个位数分开。想要了解更多相关的程序设计内容,你可以参考这些链接:按键控制数码管显示的程序、外中断按键控制数码管显示、按键控制步进电机并在数码管显示。