4.1系统主程序设计思路
为了能达到公平、公正、合理的设计理念,应该在主持人发布抢答命令之前设定好抢答时间。当时间设定好了之后,主持人发布抢答命令。按下开始按键后,程序开始打开,定时中断开始倒计时,然后调用键盘扫描子程序,当扫描到有人按下了抢答键,马上关闭抢答中断计时器T1,调用显示程序,此时封锁抢答键盘,启动计时器T0。 4.2程序流程图
启动中断,数码管开始计时20秒 P3.2==0 初始化 开始 无
有无选手抢答 有
中断停止显示选手及时间 结束 10
五、系统仿真与调试 5.1 Keil uVision4软件调试
软件调试是通过对用户程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。
本设计用到了Keil uVision4软件,首先打开Keil uVision4,将程序输入;然后进行调试,将程序中的语法错误和逻辑错误纠正,调试完毕后,创建HEX文件,HEX文件用于烧写芯片,将制定程序写入已设计好的电路板中,使其能根据我们的要求实现相应的功能;最后将HEX文件烧写入AT89C51芯片,运行电路,让其实现八路抢答的功能。
5.2 proteus仿真
首先将电路图根据设计要求在软件中准确地画出,即进行ISIS原理图设计,我们的仿真也是完全基于ISIS原理图模块下进行的,在本设计中我们用到的是交互式仿真,用于校验所设计的电路是否能正常
11
运行
然后将Keil uVision4生成的HEX文件链接到该中原理图,即设计文档的建立。
文档建立好之后, 按OK执行程序。下面是仿真图
12
初始化状态
8号选手成功抢答
13
5.3实物
5.4使用说明
主持人按下开始,抢答开始,倒计时。
14