姚海云+马野

摘要:本设计利用51单片机,按键开关模块,数码管显示模块和LED模块来实现一个简单的五人表决器的功能。按键开关模块中的键2~键6表示五个人,由5个人来投票,当同意的票数大于或者等于3人时,数码管显示同意的人数,说明表决通过。当表决的人数小于3时,数码管显示同意的人数。

关键词:表决器;单片机;流水灯;数码管;矩阵键盘;时钟

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)14-0236-03

Design of a Five Person Voting Machine Based on Single Chip Microcomputer

YAO Hai-yun, MA Ye

(School of Information Engineering, Yulin University, Yulin 719000, China)

Abstract: This design uses 51 single chip microcomputer, button switch module, digital tube display module and LED module to realize the function of a simple five person voting machine. Key switch module in the key 2 ~ 6 of five individuals, 5 people to vote, when the consent of the number of votes greater than or equal to 3 people, the number of digital display, the number of votes, the vote through. When the number of votes is less than 3, the number of digital control display.

Key words: voting device; single chip microcomputer; running water lamp; digital tube; matrix keyboard; clock

当今时代是一个新技术层出不穷的时代,传统的分立元件或数字逻辑电路构成的控制系统正在被单片机智能控制系统所取代。表决器就是单片机在实践中的应运[1]它极大地方便了我们对表决结果的统计。

1 系统硬件总体结构

本次设计的五人表决器选用AT89C52单片机为主芯片,对LED灯和数码管的控制都由AT89C52芯片实现其总体实现框图如图1所示。

硬件总体框图中包含了4个部分,流水灯模块,数码管显示模块,矩阵键盘模块,时钟模块。

2 模块电路分析

基于单片机的五人表决器能正常工作,是在各个电路模块组合下协调完成的,其中包括了单片机流水灯模块,数码管显示模块,矩阵键盘模块,时钟模块。

2.1流水灯模块

流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,通过编写程序控制单片机管脚电平的高低变化,来实现发光二极管的一亮一灭[2]。52单片机的P1口连接着发光二极管,它具有单项导电性,通过5mA左右电流即可发光,电流越大,亮度越强,若电流一般控制在3-20mA之间。在这里给发光极管串联一个电阻的目的是为了起到限流的作用。电路图如图2所示。

2.2 数码管显示模块

单片机的应用系统设计中,用单片机驱动LED数码管有很多方法:按显示方式分,有静态显示和动态(扫描)显示;按编译方式可分,有硬件编译和软件编译之分[3]。AT89C52芯片P0口与锁存器74LS273的D0-D7口连接。锁存器74LS273的输出端Q0-Q7与共阳极的7段数码管相连接。共阳极数码管的内部8个发光二极管的所有阳极全部连接在一起,电路连接时,公共端接高电平,要点亮的那个发光二极管给阴极送低电平。此时,需要5mA以上的电流,且电流不可过大,否则会烧毁发光二极管。单片机的I/O口送不出如此大的电流,因此数码管与单片机连接时可以用上拉电阻形成驱动电路。电路图如图3所示。

2.3 矩阵键盘模块

键盘是电子器件中常见的输入装置[4]。单片机系统中,键盘由一组常开的按键组成。当按键闭合时就会向单片机系统输入一个电平信息。每个按键都被赋予了一个键码。单片机据此代码执行任务。在单片机系统按键数量较多时为了减少I/O口的使用通常使用矩阵键盘[5]。矩阵键盘由16个按键排成4行4列,第一行将每个按键的一端连接在一起构成行线,每一列将每个按键的另一端连接在一起构成列线,这样一共有4行4列共8根线,将这8根线连接到单片机的8个I/O口上,通过程序扫描键盘就可检测这16个键。电路图如图4 所示。

2.4 时钟模块

时钟电路的作用是为单片机提供一个时钟信号,所有程序都按照特定的时间顺序工作,它控制着计算机工作的节奏。微型计算机的CPU实质上就是一个复杂的同步时序电路[6]。时钟电路中的晶体振荡器分为有源晶振和无源晶振两种类型。根据连接方式的不同,时钟电路分为内部时钟方式和外部时钟方式,前者是单片机内部的振荡电路产生时钟信号,后者则是外部振荡源为单片机提供时钟信号。本次设计采用内部振荡方式为单片机提供时钟信号。电路图如图5所示。

3 软件设计

3.1 主函数设计

主函数模块会用到之前各个模块的函数。在本次设计中,打开开关流水灯开始工作。开始表决时让流水灯停止如果表决同意的人数大于等于3,表示表决通过。否则表示表决结果为不同意,函数结束。在这个过程中,看复位键是否按下。若按下则开始从新开始表决。这一过程的处理流程图如图6所示。

3.2按键程序设计

通过程序扫描键盘就可检测16个键。检测时,先送一列为低电平,其余几列全为高电平,然后立即轮流检测一次各行是否有低电平,若检测到某一行为低电平,则可以确定当前被按下的键是哪一个键。这一过程的处理流程图如图7所示。

3.3 显示程序设计

表决时大家关注的是表决结果,因此数码管的显示是非常重要的,P0口读入数据控制数码管的静态显示,通过段选和位选来确定是第几个数码管的哪几段亮,从而在数码管上显示数字,此时显示的数字即为表决结果。

数码管显示程序的关键代码如下:

#include // 52系列单片机头文件

sbit dula=P2^5; //申明U1锁存器的锁存端

sbit wela=P2^6; //申明U2锁存器的锁存端

void main()

{

P0=0; //关闭所有数码管段选

dula=1;

dula=0;

P0=0x10; //位选中所有数码管

wela=1;

wela=0;

while(1)

}

4 实验结果

当表决的人中有5个人同意时,LED灯处于闪烁的状态下,表示表决通过。如图8所示。

5 总结

由于时间和知识技术方面的不足,本次设计还有许多问题需要在实际应用中解决。五人表决器可以再改进一些:可以设计一个倒数计时的模块。当按下复位键后。设计时倒数10s。在倒数的期间,表决者可以投票,倒数结束后,表决的结果无效。还可以再设计两个数码管显示表决的结果,一个显示同意的人数,一个显示反对的人数。当然,随着技术的不断革新,表决器必然会更加智能化,功能也更加多样化,相信在将来,人工智能会走进我们生活中的点点滴滴,为人类的进步和发展做出更大的贡献。

参考文献:

[1] 贡雪梅. 项目教学法在单片机原理课程设计中的应用[J]. 实验技术与管理,2009,26( 15407):115-116+144.

[2] 郭明磊. 用单片机实现流水灯的控制设计[J]. 黑龙江科技信息,2008(4):72.

[3] 郭景. 用单片机驱动LED数码管显示[J]. 阴山学刊:自然科学版,2005,19(1):41-42+56.

[4] 赵亮. 单片机从入门到精通系列讲座——矩阵键盘应用[J]. 电子制作,2008(7):63-65.

[5] 谭成豪,许建明. 试述51系列单片机矩阵键盘编程[J]. 科技传播,2011(6):197.

[6] 刘凤格. MCS-51单片机的时钟电路[J]. 菏泽师范专科学校学报,2003(2):87-89.

430单片机实现三人投票表决器_基于单片机的五人表决器的设计相关推荐

  1. 基于单片机的自动追日系统设计_基于单片机的自动浇花系统的设计

    龙源期刊网 http://www.qikan.com.cn 基于单片机的自动浇花系统的设计 作者:吴蓓 张阳 来源:<现代信息科技> 2018 年第 03 期 摘 要:为了解决人们生活中由 ...

  2. 单片机节日彩灯实训报告_基于单片机的节日彩灯设计论文课程设计.doc

    基于单片机的节日彩灯设计论文课程设计.doc 辽 宁 工 业 大 学 单片机原理及接口技术课程设计(论文) 题目: 基于单片机的节日彩灯设计 院(系): 专业班级: 学 号: 学生姓名: 指导教师: ...

  3. 单片机IC卡读取开题报告_基于单片机的ic卡读写系统的实现.doc

    基于单片机的ic卡读写系统的实现 2013届 分类号:TP311 单位代码:10452 毕业设计(论文) 基于单片机的IC卡读写系统的实现 姓 名 学 号 Abstract With the deve ...

  4. 单片机节日彩灯实训报告_基于单片机控制的节日彩灯设计.pdf

    ELECTRONICS WORLD 技术 交流 ・ 基于单片机控制的节日彩灯设计 徐州生物工程职业技术学院 魏建玮 [摘要] 为了增添节日气氛,大部分城市都会有节日彩灯,而节日彩灯大部分是单一循环的, ...

  5. 单片机双字节数乘法运算实验_基于单片机指纹电子密码锁——硬件设计2

    指纹识别模块 ATK-AS608 指纹识别模块是 ALIENTEK 推出的一款高性能的光学指纹识别模块.芯片内置 DSP 运算单元,集成了指纹识别算法,能高效快速采集图像并识别指纹特征.模块配备了串口 ...

  6. 单片机节日彩灯实训报告_基于单片机的节日彩灯控制电路与程序设计报告与资料...

    #include #define uchar unsigned char          //宏定义 #define uint unsigned int sbit k1=P1^2;          ...

  7. 基于单片机智能灯光光控照明系统设计、基于单片机HX711电子秤自动计价系统设计、基于单片机GPRS远程测控系统设计、基于单片机多功能循迹避障无线遥控蓝牙智能小车-设计资料

    基于单片机智能灯光光控照明系统设计 智能光控照明系统设计原理: 本系统采用STC89C52系列的单片机为核心,利用BH1750传感器测量实时光照强度,并将亮度的模拟信号转化成数字信号,大大减少了系统的 ...

  8. 基于单片机HX711电子秤自动计价系统设计-基于单片机GPRS远程测控系统设计-818基于单片机循迹避障无线遥控蓝牙智能小车-基于单片机24s倒计时篮球积分器系统-基于单片机智能洗衣机控制系统

    816基于单片机HX711电子秤自动计价系统设计 本设计使用高精度电阻应变式压力传感器,用A/D转换器HX711(HX711数据手册)对传感器信号进行调理转换.AT89s52(AT89s52数据手册) ...

  9. 【电路】基于单片机智能睡眠枕系统设计-基于单片机音乐喷泉制作设计-基于单片机智能温控风扇调速系统设计-基于单片机智能自动循迹小车控制系统设计-基于数字电路的4人投票系统设计(仿真,报告)毕设课设资料

    1620基于单片机智能睡眠枕系统设计-文档+PPT+PCB图+原理图+源码 智能睡眠枕主要由lcd屏幕.蓝牙.压力传感器.蜂鸣器.单片机等等组成,用户可通过四个独立按键进行操控(四个按键从左至右为1. ...

  10. 51单片机基本刷屏测试实验_基于单片机的发动机振动速度、位移和加速度测量方法...

    Single-chip microcomputer-based measuring of engine vibration speed.displacement and acceleration Ab ...

最新文章

  1. 第二十一讲 卷积公式
  2. iphone开发中的一些小技
  3. affiliate的使用方式
  4. loop 伪设备 挂在文件系统
  5. CSAPP:第十一章 网络编程
  6. 性能测试总结(一)---基础理论篇(转载)
  7. EL : Free Package of October
  8. 中医与佛教共同推出的养生秘诀 100 条
  9. pytorch读取单通道图片
  10. android webserver mysql,Android手机变身Web服务器,BitWebServer简单评测
  11. (四)揭开数据分析方案的神秘面纱——一案在手,成竹在胸
  12. 微信小程序个人笔记!
  13. StringTokenizer类
  14. 带圆圈的数字和markdown常用表达式记录(持续更新中)
  15. 2.2.2-6-2 补码位乘法(Booth算法)
  16. Nessus最新版8.15安装教程
  17. tmap | 制作地图动画、放大局部区域
  18. ubuntu root账户下添加和删除用户
  19. ESP32-C3入门教程 基础篇(八、NVS — 非易失性存储库的使用)
  20. Cesium之地形(1)

热门文章

  1. 图片合并及生成二维码
  2. 一套「MySQL性能优化金字塔法则」
  3. webots离线网页无法跳转
  4. 如何使用QXDM 的1477项 转化utc时间
  5. 黑苹果MacOS Big Sur 11.0 安装教程及驱动工具
  6. UltraISO 制作U盘启动盘(Ubuntu、CentOS)
  7. 佛大计算机控制系统期末试卷,[设计]统考计算机模拟练习试题及答案基础知识...
  8. 梅林固件刷CFE教程
  9. 近世代数——Part2 群:基础与子群 课后习题
  10. 风车im即时通讯源码