基于单片机的班级投票器
更新时间:2023-11-28 15:10:01 阅读量: 教育文库 文档下载
基于单片机的班级投票器
【摘 要】班级投票器是针对班级而设计的现场投票计数器系统,该系统可用于班级人数小于99人,职位候选人不超过10人的投票选举。投票器是由键盘接口专用芯片74C922来完成按键编码,再通过单片机采集信息,进行票数的累计,最后有四联数码管来显示选举结果。投票期间用一个按键来控制投票有效性,并通过发光二极管来完成指示工作。选举投票期间可暂停投票,查看投票结果,后可继续投票,直至达到预设的最大班级人数关闭投票系统。
引言 ????????????????????????????????3 1 系统总体设计 ???????????????????????????4
1.1 设计要求…………………………………………………………………………………..........4 1.2 系统组成方框图……………………………………………………………………………......4 1.3 方案设计……………………………………………………………………………………......4
2 系统硬件设计 ???????????????????????????4
2.1 相关芯片介绍………………………………………………………………………………......4 2.1.1 AT89C51芯片介绍…………………………………………………………………………...4 2.1.2 74C922芯片介绍……………………………………………………………………….........5 2.1.3 74LS04芯片介绍……………………………………………………………………….........6 2.2 各单元电路设计与分析……………………………………………………………………......7 2.2.2 由74C922够成的键盘电路………………………………………………………………....7 2.2.2 复位电路…………………………………………………………………………………......8 2.2.3 时钟电路…………………………………………………………………………………......8 2.2.4 显示模块……………………………………………………………………………………..9 2.2.5 控制投票有效部分…………………………………………………………………………10 2.3 总原理图和元器件清单……………………………………………………………………….11 2.3.1 总原理图…………………………………………………………………………………….11 2.3.2 元件清单…………………………………………………………………………………….11
3 系统软件设计???????????????????????????12
3.1 主程序设计……………………………………………………………………………………12 3.2 中断程序设计…………………………………………………………………………………13 3.3 定时程序设计…………………………………………………………………………………14
4 调试???????????????????????????????16 5 总结???????????????????????????????16 6 致谢语??????????????????????????????17 参考文献??????????????????????????????17 附录一 PCB图 ???????????????????????????19 附录二 源程序 ???????????????????????????19
1
引言
在大学生活中,时常发生选举投票事件。目前班级职位选举采用纸条的方式进行投票。具体过程如下:首先,在黑板上列出要选举的职位及职位候选人的名字;接着班级成员在纸条上写上候选人的名字,折叠好放在指定的位置(如讲台桌上);再来全部投票完毕后,进行唱票,判断票的有效性(写上多于一个候选人的名字,或不写都视为废票),同时并统计票数。最后,票数统计完成后先判断本次选举是否有效(若发生选票多于选民数,视为无效)。确定本次选举有效后,宣布最高得票者为该职位的的当选者。这样的选举的缺点是比较费时,效率不高,同时也由于可能发生的选举无效问题,造成时间的延长,同时降低班级成员的积极性等。其优点就是选举十分的直观,可以在唱票时期直接观察到每个候选人的得票情况,并较直接判断出当选人。
针对纸条选举费时,效率不高的问题,采用设计投票器来改善这一情况。本设计是基于单片机设计的适用于班级选举的投票器,由键盘专用芯片74C922完成投票,再经由单片机采集信息,统计票数。最后由四联数码管显示投票结果。并且利用发光二极管和一个按键来控制投票的有效性。选举投票期间可暂停投票,查看当前投票结果,后可继续投票,直至达到预设的最大班级人数就会自动关闭投票系统。 本次设计的班级投票器可以有效地控制投票及选举的有效性,就节省了去判断选票及选举的有效性及选举无效延长的时间。同时投票器本身有统计票数的功能,就又节省了统计票数的时间。整体上提高了班级选举的效率,同时也使得选举更加地民主,公平。
2
1、系统总体设计
1.1 设计要求
假定班级成员45人,职位候选人10人(不超过10人)。选民(班级成员)分别编号为01,02,??44,45;候选人分别编号为01,02,??,09,10(由10个按键构成)。
(1) 一上电不允许投票,按下允许投票键,利用10个按键进行投票,有效投票后显示选民编号和所选候选人的编号。将投票结果储存起来并且再按其他按键无效。
(2) 按下允许投票键进行下一个选民的投票。
(3) 投票期间,可暂停投票来查看票数统计结果,后按下允许投票键又可继续投票。
(4) 全部成员投票完成后,最后显示候选人的编号及其得票数。 (5) 按下复位键,进行新一轮的职位选举。
1.2 系统组成方框图
复位电路 单片机 (AT89C51) 时钟电路 数码管显示
由74C922构成的键盘投票
允许投票键开启选民投票 LED灯灭提示选民可以进行投票;当LED灯亮,无法进行投票。 图1-2 系统模块组成方框图
1.3 方案设计
设计时班级成员不超过99,职位候选人10人。由键盘接口专用芯片74C922及12个按键(10个按键用于投票工作,2个按键用于查看投票结果)构成的电路来完成键盘扫描,编码,再通过AT89C51
芯片来采集信息,进行票数的统计。由四联数码管完成显示工作,投票期间显示选民编号和所选候选人的编号,查看结果时显示候选人的编号及其得票数。设置一按键来控制有效投票,并让发光二极管配合指示。选举投票期间可暂停投票,查看投票结果,后可继续投票,直至达到预设的最大班级人数关闭投
3
票系统。
2、系统硬件设计
2.1 相关芯片介绍 2.1.1 AT89C51芯片简介
AT89C51是一种低电压,高性能CMOS8位单片机,采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和FLASH存储单元,功能强大AT89C51单片机可为您提供许多高性能比的应用场合,可灵活应用在各种控制领域。[1]
它具有以下特点:4K字节FLASH闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量级中断接口,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到出现下一个硬件复位。
图2-1-1 AT89C51引脚图
2.1.2 74C922芯片简介
74C922芯片有16键IC和20键IC,本设计采用的是16键的IC。图2-1-2(1)所示为4×4(16键)扫描式编码键盘原理图。这种键盘的按键排成矩阵形式,以减少按键联线。如图中有16个键,排列成4行4列,仅需8根引线。时钟发生器的输出送给4位计数器进行计数,计数器的低2位经译码后作为行扫描,高2位经译码后作为列扫描。若没有检出有键闭合,则计数器周而复始反复计数,即反复进行扫描,一旦检出有键闭合,就发出一个脉冲使时钟振荡器停振,计数器随即停止计数。单片机通过读取计数器的计数值来获取闭合键所在的行列位置,然后从真值表得到按键读数。如果有两个键同时按下,
[2]
则扫描到第一个闭合键时就停止扫描,把该键当作有效按键进行处理。
4 位计数器 2—4译码器
4 2 ︳ 4 3 2 1 0
时钟发生器
图2-1-2(1)扫描式编码键盘
74C922芯片(16键IC)的引脚排列如图2-1-2(2)所示:
图2-1-2(2)74C922引脚图
X1~X4:列线。
Y1~Y4:行线。
OSC:接振荡电容0.1μF,以便扫描矩阵键盘
KM:键盘消除抖动电路,并发出两种信号。(1)内部计数器停止计数。(2)若有键按下,使DA脚由未按键时的低电平变为高电平,若按键未放开则一直保持高电平,当按键放开时,才转为低电平。此引脚外接一个电容是OSC所接电容的10倍。
DA:数据有效信号。若无键按下,保持低电平。若有键按下,变为高电平,直到键放开,才转为低电平。 /OE:输出使能。
D~A:按键值输出,按BCD码输出,具体输出情况如表2-1-2所示。
表2-1-2 真值表 数据输A B C D 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Y1, Y1, Y1, Y1, Y2, Y2, Y2, Y2, Y3, Y3, Y3, Y3, Y4, Y4, Y4, Y4, X2 1 0 0 0 X3 0 1 0 0 X4 1 1 0 0 X1 0 0 1 0 X2 1 0 1 0 X3 0 1 1 0 X4 1 1 1 0 X1 0 0 0 1 X2 1 0 0 1 X3 0 1 0 1 X4 1 1 0 1 X1 0 0 1 1 X2 1 0 1 1 X3 0 1 1 1 X4 1 1 1 1 0 0 0 0 出 X1 2.1.3 74LS04芯片简介
74ls04是一六反向器,其功能表如表2-1-3,其引脚分布如图2-1-3。
表2-1-3功能表
5
正在阅读:
基于单片机的班级投票器11-28
92铺架分部安全生产责任制101-08
电工电子学技术习题及答案04-16
bios查看及修改常用软件10-04
《马克思主义基本原理概论》 练习题及答案04-20
关于编制铜钴矿冶炼生产建设项目可行性研究报告编制说明04-12
剩余油分布机理及预测技术08-13
高考专项指导:成语、熟语05-05
湖南省2012年公务员录用考试大纲05-12
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 单片机
- 班级
- 基于
- 投票
- 福建省厦门市2015-2016学年高一第一学期期末质量检测地理试题 - 图文
- 巡视 - 课堂教学不可或缺的部分-2019年精选作文
- 概率论与数理统计复习题1
- 中职数学基础模块下册--概率与统计初步练习题及答案
- 计算机操作系统课程设计方案
- 新教师如何提高课堂教学质量
- 基因工程作业(引物设计) - 图文
- 应用牛顿第二定律处理“四类”问题
- 分析居住区环境设计与景观元素构成
- 上级文件学习记录
- K12学习2019年高考政治一轮复习 专题01 神奇的货币(练)(含解析)
- STARCD计算结果不收敛怎么办
- 实习生安置就业协议书
- 气象学与气候学试卷 - 图文
- 5 工程测量监理实施细则
- 信号硬件实验 - 图文
- 浔溪小学-蒋伟方-图文并茂赞西湖
- 振动与波动部分测验(答案)
- 桥面系及附属结构施工方案
- 中考考生心理的八大催化剂