目录
一、方案设计 ................................................ 2
二、硬件电路设计 ........................................ 2
三、软件设计说明 ........................................ 6
四、 程序清单 .............................................. 7
五、制作调试说明 ...................................... 12
六、操作使用说明 ...................................... 13
七、总结 ...................................................... 13
1
单片机课程设计
一、方案设计
1、设计题目:5人表决器 2、设计要求:
1)、可供5—7个人进行表决,每个人有一个“同意”和一个“反对”按键,故一个人需要两个按键,表决时两个键先按下的一个有效,同时按下则表示无效,每次表决每个按键只能是第一次按下的有效,多按无效,用单片机设计表决器是硬件电路与软件设计相结合的一种设计,因此在硬件电路只能实现按键的按下与释放,不能智能的实现检测按键被按下几次,则可用软件设计来实现其功能。 2)会议主持人可利用按键控制表决的开始与结束,点亮黄灯用于显示表决开始,熄灭黄灯表示结束,并将表决结果用红灯与绿灯显示。当不相等时,“同意”多于“反对”点亮绿灯,“同意”少于“反对”点亮红灯。
3)在实现上述功能的基础上增加“同意”数和“反对”数的显示。
二、硬件电路设计
1、硬件设计思路:
此次设计的题目是5人表决器,分析得设计的硬件电路选用P1口与P2口作为同意与反对按键的输入端。又表决的开始与结束是由主持人来控制的,因此需要两个按键来表示表决的开始与结束,因此可采用外部中断0与外部中断1来控制表决的开始于结束。故设计总共需要按键12个。设计要求中需要四盏灯,分变为
2
一个黄灯,一个绿灯和二个红灯,三盏灯用于输出显示,因此也可以征用单片机的I/O口,由于P1口与P2口作为同意与反对按键的输入端且P0口当做输出端口时可以不用接上拉电阻,因此可将三个显示灯接在P0口用于显示表决的结果。还有一盏红灯用来做电源指示灯。
2、元器件参数确定:
设计要求中需要三盏灯(黄灯,绿灯和红灯)用于输出显示,选用P0口的3个端口与显示灯相连接用于输出,由于输出端口输出的高电平一般为5V,而发光二极管允许的最大电流为5mA,因此需要用到限流电阻,发光二极管可降2V的电压,则限流电阻上的压降为3V,那么限流电阻的最小阻值为R=3V/5mA=600欧姆,由于输出的高电平不是5V,故用510欧姆的限流电阻。然后将单片机的最小系统(最小系统中各元器件的参数可参考单片机课本中给出的值)加入电路中就是此次设计的硬件电路。
3、元件清单:
元件名称 按键开关 电解电容 瓷片电容 发光二极管 晶振 电阻 单机片芯片 电源插头 元件数目 12个 1个 2个 3个 1个 3个 一片 1个 元件型号 一般 一般 普通 普通 8051 / 元件参数 22uF 30PF 红、黄、绿灯 12M 510 / 备注 接对角线 有正负之分 显示灯 内部时钟电路 用于限流 40脚 / 3
各元器件的作用:
开关:有十个开关用于分别用做5人的同意与反对按键;一个开关用于复位电路,另外两个按键用于主持人的开始与结束按键;电容:用于单片机的最小系统;发光二极管:黄灯用于显示表决的开始与结束,红灯与绿灯用于显示表决的结果;电阻:用于限制电流;8051芯片:软件编程;电源接头:用于接外接电源。
4、电路工作原理简述:
该电路是基于硬件电路,应用汇编语言来设计出其工作流程,硬件电路是用软件程序来检测表决器的开始按键是否被按下,如果开始键已按下,则利用软件程序来检测用于表决的按键是否被按下以及按下的按键是否有效,然后检测结束键是否被按下,如果按下则表决结束,并且显示最终的表决结果。硬件电路只能够用于表征表决是否开始以及每个人按下的是同意按键还是反对按键。
工作流程:当主持人按下开始表决的开始按键(在电路中用接在外部中断0上的按键来表示开始按键)后,5个人才开始表决,5个人分别按下同意按键或是反对按键,剩余的事情由软件来处理分析最终统计得到“同意”的人数和“反对”的人数,当主持按下结束按键后(在电路中用外部中断1上所接的按键来表示结束按键),软件中用外部中断1来表示结束(采用中断的方式),在中断程序中比较“同意”的人数与“反对”的人数的大小。当“同意”的人数大于“反对”的人数时,应用软件程序点亮绿灯;当“同意”的人数小于“反对”的人数时,应用软件程序点亮红灯;当“同意”的人数等于“反对”的人数时,则应用软件程序将红灯与绿灯同时点亮。
4
图1 单片机系统的时钟电路
图2 实物电路板
5