版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、无线表决器系统设计与实践论文 摘 要 本课题主要是设计并实现一个无线表决器系统,常用于民主表决。该系统以24L01无线通信模块作为主要通讯设备,采用的核心芯片为STC89C52,实现一对多的信息通讯,利用无线模块传输数据信息,并进行统计整理通过液晶显示屏显示出来,通过程序设定投票规则,分析票数统计情况,得到最终投票信息。并通过应答以达到上位机与各投票点之间的相互通信,从而组建一个基于24L01无线通信的投票系统。本设计采用同一数据通道传输不同点的数据,简化了程序而且拓宽了应用空间,同时对操作设定了声音报警系统,对于错误操作会发出警报提醒。 经过原理设计,制作PCB电路板,硬件各模块调试,软件设
2、计和调试,最终完成了该表决系统。系统在单个传输和多个同时传输中均可正常使用,并对每个投票机设置了不同地址,有效防止了同一次表决中重复投票的情况,可应用于各种投票表决场合。 关键字:无线传输;STC89C52;NRF24L01;显示;报警Abstract This topic mainly designing and implementing a wireless voter system, used to vote democratic. With 24 l01 wireless communication module for the system as the main communica
3、tions equipment, the core chip for the STC89C52, for information of one-to-many communications, to transmit data using wireless module information, statistics and sorting through the LCD screen display, voting rules set by the program, the vote count analysis, get the final vote. And reply in order
4、to achieve mutual communication between upper machine and various polling stations, so as to form a voting system based on 24 l01 wireless communication. This design uses the same data channel transmission difference data, simplifying the program and widen the application space, set up a sound alarm
5、 system to operate at the same time, the wrong operation will sound an alarm to remind Through the principle of design, production of PCB circuit board, the debugging of hardware module, software design and debugging, finally completed the voting system. In single and multiple transmission and trans
6、mission system can be normal use, and vote for each machine set a different address, effectively prevent the repeat voted on at the same time, can be applied to all kinds of vote on occasion Key words Wireless transmission; STC89C52; NRF24L01; Display; Alarm目 录摘 要IAbstractII第1章 绪论11.1 课题的背景及意义11.2 国
7、内外研究现状11.3 课题研究内容21.4 本章小结2第2章 硬件电路的原理与设计32.1 系统分析32.2 单片机控制模块62.3 供电模块82.3.1 LM1117芯片介绍82.4 键盘模块92.5 液晶显示模块92.6 无线通信模块112.7 报警模块132.8 本章小结13第3章 软件设计143.1上位机系统程序设计143.2 投票机系统程序设计173.3 本章小结19第4章 系统安装调试204.1 系统软件调试204.2 系统硬件调试224.3 本章小结23总 结24参考文献25附录1 系统PCB图27附录2 系统实物图29第1章 绪论1.1 课题的背景及意义 据史记?周本纪:“幽王
8、为烽燧大鼓,有寇至则举烽火。”早在我国古代的周王朝就有利用烽火传达军事信号的记载,通过山峰上修筑的烽火台燃点柴火以迅速传达信息,这被认为是原始的无线远距离传输方法。直至1838年,塞缪尔?莫尔斯发明了“莫尔斯”码传递信号,出现了人类史上第一份电报。接着 出现,随后几十年,“无线电之父”伽利尔摩?马可尼成功进行第一次横跨大西洋的无线电波传送实验,由此诞生了现代意义的无线通信。从电报, 到如今遍布全球的互联网系统,无线信号传输的技术发展得很快,给人类生活带来了诸多的便利。使通信突破了时间和空间的障碍,进行实时的相互信号交流。 无线传输具有性能稳定,综合费用低,良好扩展性和较低的维护成本等特点,可以
9、使通讯过程更为流畅、方便、快捷,实时地进行信息交流。在安全监测、工业监控、交通监控以及家庭监测等多个领域发挥重要的作用。无线传输日益上升为生活、生产、军事等活动的必备技术,在现代社会中已经成为必不可少的一部分。发展无线通信是发展科技的重要版块,未来的智能化生活也将离不开无线通信。1.2 国内外研究现状 当今世界各国都进行了很多无线通信技术的研究和改进,最具代表性的是无线接入技术和蜂窝 。在短短的二十年,经历了模拟的AMPS/TACS技术、数字的GSM/CDMA ONE,以及WCDMA/TD-SCDMA、HSDPA技术等,通信终端的移动速度也将由低速发展到未来的高速。 中国无线通信网络,与国外相
10、比,在技术水平上与应用程度上存在的差距是明显的,因而加大对无线通信技术的发展力度,并注重保护自主知识产权,是我国在以后研究中应该注重的。在网络规模方面的应用,尤其是无线网高速接入的应用方面,为令用户的无线远程接入更加灵活可靠,应加大大城市和中型城市的覆盖与使用的比率。 由最初的固定方式无线通信发展到了移动方式,至今,移动通信的发展历程约经历了五个阶段。首先是20年代到50年代初,主要将短波频率和电子管技术应用于航海和军事上,150MHz VHF单工汽车公用移动 系统MTS到这阶段后期才出现。然后是50年代到60年代期间,频段扩展到了UHF450MHz,系统大都是移动环境中专用的,器件技术已过渡
11、至半导体,解决了移动 和公用 网的接续问题。接着到70年代初至80年代初,由美国贝尔研究所提出蜂窝系统概念,频段扩展到了800 MHz,而AMPS试验于70年代后期进行。随后是80年代初到90年代末,第二代数字移动通信兴起并快速发展,逐渐发展个人通信业务。最后是90年代末至今,数据通信和多媒体业务需求开始兴起,第三代移动通信拉开帷幕,它具有适应移动数据、移动计算和移动多媒体运作需要的优点。 目前,无线电台、移动通信、微波通信、无线宽带、卫星通信、航天器与地球之间的远距离测控及通信等社会生活、生产的各个领域,都已经应用到了无线通信技术;无线 机也是对无线通信技术的应用。广义来说,电视、广播以及各
12、种家用电器的遥控也属于无线电通信的应用领域。无线通信技术为我们生活带来了很多的便利,成为了人类现代社会发展中极为重要的技术。 本设计以表决大会为应用场景,通过对无线传输信号的学习探究,进行实践设计。我国第一次使用电子表决器是在七届全国人民代表大会三次会议,这使民主表决更加体现其公平性,且极大地节省了表决时间和减少人力消耗,还有效防止作弊行为和避免人为差错。1.3 课题研究内容 在对无线传输技术进行研究的基础上,设计一个基于无线传输技术的表决器系统。 课题研究内容为:设计一个无线表决器应用系统。该系统由上位机和表决器节点组成。上位机负责收集表决器发来的表决者的信息(同意、反对和弃权三种),并对表
13、决情况进行统计比较。表决器上设定选项按键,并设置相应的色灯显示,当表决者按下选项按键并确认无误后,按下“确认”键,信息就会自动发到上位机中。具体工作包括: (1)查阅资料,学习无线通信协议和标准及各种通信方式。 (2)无线通信系统硬件设计:分别设计上位机及投票机的无线通信系统电路。 (3)无线通信系统软件设计:设计无线通信C语言程序,通过单片机实现通信。 (4)表决器系统模块调试:分别调试各个模块,保证各个功能可以顺利实现。 (5)系统综合调试,实现无线表决器功能。 表决器系统的功能与规则:实现上位机与多个投票机之间的无线通信,上位机启动后,投票人可通过投票机选择选项进行投票,按下确认后,投票
14、机一直处于发射状态,因此在多个投票机同时发送时,也不会导致发送失败。而且,每个投票机有自己的标识地址,一旦发送成功,就不能进行重复投票,保证了公平性。1.4 本章小结 本章主要是对无线通信技术的背景及发展历程、研究意义以及国内外研究情况的介绍,并结合本课题的制作要求,列出来课题研究内容,形成基本的课题设计框架。本章起到指导设计思路的作用,相当于写作的提纲。 第2章 硬件电路的原理与设计2.1 系统分析 本系统广泛应用于生活中的民主表决,在投票表决的投票人数较多时,与传统的人工投票点票方式相比,本系统同时具备投票、点票、核对以及防止多次投票等功能。通过无线通信技术,采集统计投票机多路信息,并通过
15、无线传输到主控接收上位机,主控接收上位机再通过LCD液晶显示出投票结果。因此,在主控接收上位机上可以直接便捷地查看投票情况,而且还设置了错误操作报警装置,当出现超时投票、重复投票等错误操作时,投票机会通过蜂鸣器报警提醒,很好的体现了公平性和便捷性。此外,与有线连接的系统相比,应用无线传输解决了多线杂乱的问题,极大的方便了投票的场地的选择和安排。 本设计整个系统的运行主要是由一款单片机来协调控制。系统有两大部分,分别是上位机和表决器两部分。两大部分主要有8个模块组成,它们分别是:单片机控制模块、无线模块、5V供电模块、5伏转3.3伏电路模块、液晶显示模块、键盘模块、指示灯模块、报警模块。整个系统
16、的设计框图如图2-1所示,其中,单片机模块和无线模块是系统的核心部分。各模块的功能如下: 单片机控制模块:作为控制中心,协调各模块的工作。同时能够使用单片机内部EEPROM对数据进行掉电存储,本设计选用了STC89C52RC单片机作为核心芯片。 无线模块:用于传输投票信息,不同投票机的信息传输使用相同的数据通道来传输,本设计通过了不同的地址识别不同的投票机。 供电模块:使用USB口为系统进行正常5V供电(也可使用稳压电源供电)。并使用LM1117Y33芯片电路提供3.3V电压给无线模块。 液晶显示模块:用于实时显示投票信息及结果显示,应用的是1602LCD液晶显示。 键盘模块:用于表决选项选择
17、和确认,按键不多,使用独立按键。 指示灯模块:用于指示选项,不同颜色表示不同选项,便于辨认。 报警模块:用于提示报警,当出现错误操作时,报警系统就启动,蜂鸣器响。a上位机部分电路系统方框图b投票机部分电路系统方框图c 主、从机联机设计方框图 图2-1 本设计系统的方框图 系统的设计方案,原理图和PCB图的绘制通过Altium Designer 软件实现。 上位机的原理图如下2-2所示,图中无线模块主要采用了nRF24L01作为核心通信芯片,它具有125个可选的工作频道,可以接收6路不通的数据通道,即数据通道0到通道5。本系统设计采用相同的数据通道传输不同从机的信号,无线模块接在单片机的P2口,
18、使用3.3V供电。主要通过LM1117Y33芯片电路实现5V电压转换为3.3V,输出的3.3V电压可以直接供给无线模块工作。上位机也设置了三种颜色的LED灯作为标示,其中红黄蓝对应不同的选票结果,另外一个绿色灯标示上位机处于正常工作状态。 表决器原理图如下2-3所示,无线模块和供电模块与上位机所设置的原理相似,只是无线模块接在单片机的P0口。在按键电路上,这里使用了三个表决选项及确认按键,均为独立按键。设置了红黄绿三种颜色的LED灯对应不同的选项,便于使用者辨别已选项,且在按下确认键前可以更改选项。图2-2 上位机原理图图2-3 表决器的原理图2.2 单片机控制模块 基于无线通信的表决器设计是
19、运用单片机来实现的,单片机是整个系统的核心器件,只有选择合适的单片机型号,才能使得设计的各种功能得以实现,取得理想效果。 如今,单片机的应用已深入到人类生活和生产的各个领域,几乎每个智能产品都少不了单片机,对各个行业的技术革新和产品更新换代起到了极其重要的作用。依据单片机的应用要求,需具备以下的特点: 1、高集成度、体积小、重量轻。 2、面向控制,功能强大。 3、抗干扰能力强,可在恶劣的工作环境下运行。 4、使用方便,书刊及网络上的相关资料丰富,易于学习。 5、性价比高,容易产品化。 单片机的类型非常多,根据其数据总线的位数进行分类,可分为4位,8位,16位以及32位单片机。各种类型单片机均有
20、各级的特点和应用领域。本设计选用的是目前被普遍应用的8位单片机,它具有应用范围广泛,学习资源充足,容易上手,性价比高等特点。 本设计选择8位单片机作为控制核心。STC89C52RC的内部结构图如下图2-4所示,与标准51机相比,STC89C52RC最大的特点是在片内集成了ISP/IAP(在系统可编程/在线可编程)的功能,无须编程器。图2-4 STC89C52RC内部结构 所选用的STC89C52RC单片机有以下的特点: 1、 可随意设置增强型6时钟/机器周期或12时钟/机器周期。 2、 工作电压:5.53.4V(5V单片机)/2.03.8V(3V单片机)。 3、 工作频率:040MHz,相当于
21、普通8051单片机,080MHz是实际使用范围。 4、 8KB片内Flash程序存储器,可以擦写10万次之多。 5、 片上集成512B RAM数据存储器。 6、 通用I/O口(32/36个),复位后为: P1、P2、 P3、P4为弱上拉/准双向口(相同于普通MCS-51 I/O口功能);P0口为开漏输出口,作用总线扩展时,不需加上拉电阻;P0口作为I/O口用时,要加上拉电阻。 7、 ISP在系统可编程,不需专门的编程器/仿真器,可以通过串口(P30/ P31)直接载入用户程序, 3秒就可以完成一片8KB程序。 8、 芯片内置EEPROM功能。 9、 硬件看门狗(WDT)。 10、 共3个16位
22、定时器/计数器,兼容普通MCS-51单片机的定时器,其中定时器T0可以作为两个8位定时器使用。 11、外部中断4路,低电平触发中断或下降沿中断,可由外部中断唤醒掉电模式。 12、全双工异步串行口(UART),兼容普通8051单片机的串口。 13、工作温度范围:075/-40+85。 14、封装:LQFP-44、PDIP-40、PLCC44、PQFP44。建议优先选用LQFP-44,因其具有更小体积,扩展了P4口、外部中断2和外部中断3及定时器T2的功能。 STC89C52RC单片机DIP-40封装管脚图如2-5所示。 图2-5 STC89C52RC单片机管脚图 单片机共有P0、P1、P2、P3
23、四个8位双向I/O端口,均有锁存器、输出驱动器和输入缓冲器。其中P3口由于上拉的缘故,可作为一些特殊功能口,如表2-1所示:表2-1 P3口的特殊功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3.6(外部数据存储器写选通)P3.7(外部数据存储器读选通) 单片机控制模块是这个设计的控制核心,它连接着各个核心模块,并控制各模块的工作状态。本设计选用的单片机是深圳宏晶科技公司的STC89C52RC芯片。它是一款价廉、功能强大的单片机,内部含有8KB的Flash Memory,
24、因此,对于本设计来说不必外接存储器,EA脚接高电平。本设计中单片机采用11.0592MHz的晶振,复位电路同时具备上电复位和手动按键复位功能。2.3 供电模块 本设计采用USB为单片机模块、液晶显示模块、按键模块、报警模块提供5V电压,由于24L01无线通讯模块的工作电压是3.3V,所以设计中采用LM1117Y33芯片电路,将5V电压降为3.3V,然后供给24L01无线通讯模块,以保证其处于正常工作电压环境。 LM1117是一个低压差电压调节器系列。其压差在1.2V输出,负载电流为 800mA时为1.2V。它的管脚排列与国家半导体的工业标准器件LM317相同。LM1117有可调电压的版本,若需
25、1.2513.8V 输出电压范围可通过2个外部电阻实现。另外还有5个固定电压输出1.8V、2.5V、2.85V、3.3V和5V的型号。 管脚描述如表2-2所示:表2-2 LM1117管脚描述管脚号管脚名称I/O功能 1GND/ADJ-/O地/ADJ 2OUTO输出电压 3VinI输入工作电压 本设计使用的是LM1117的3.3V电压的型号,LM1117提供热保护和电流限制。电路包含1个齐纳调节的带隙参考电压以确保输出电压的精度在1%以内。LM1117系列具有LLP、TO-263、SOT-223、TO-220和TO-252 D-PAK封装,其SOT-223和LLP封装节省了空间。为改善瞬态响应和
26、稳定性,输出端需要一个至少10uF的钽电容。LM1117主要应用于高效线性调整器、电池供电装置、电池充电器等。 LM1117管脚图如图2-6所示:图2-6 LM1117的管脚图 本设计中无线模块需要3.3V供电,所以选用了LM1117Y33型号,其输入为5V,输出为3.3V,电路使用10uF输入旁路电容和22uF的输出电容。输出电容对于保持输出电压的稳定性具有特别重要的作用,选用22uF的输出电容值可以提高回路的稳定性和瞬态响应。而5V电压直接由USB接口连接到电脑就可以直接提供了。2.4 键盘模块 考虑到本设计需要3个选择按键和确认按键进行选择,因此使用独立按键,将各按键开关单独连接到单片机
27、的输入引脚上称为独立按键,每个按键各占用一个单片机的I/O接口,每个I/O接口的状态不会影响到其它接口的工作状态,这种方式具有灵活的电路配置,结构简单,而其缺点在于,随着按键数目的增多,需要占用单片机的I/O接口资源也就增加,以满足其要求,另一种方法的使用矩阵键盘方式来扩展按键的数量,由于本设计输入按键数量仅为4个,因此使用独立键盘更为合适。2.5 液晶显示模块 液晶显示作为本系统实现人机对话的一个重要组成部分,在本设计中扮演着重要的角色。通过液晶显示票数情况及投票结果等信息,动态直观,可以获得实时的信息。 1602液晶也称为1602字符型液晶 它是一种专门用于显示数字、字母、符号等的点阵型的
28、液晶模块。它由多个5*7或5*11等点阵字符位组成,每个点阵字符位均可显示一个字符。每行之间有间隔,每位之间也有一个点距的间隔,具有行间距以及字符间距的作用。它不能显示图形(用自定义CGRAM,显示效果也不好)也是因为这个缘由。 1602LCD可指显示的内容为16*2,即可以显示每行为16个字符的两行,液晶模块(显示字符和数字)。 目前市面上的字符液晶,大部分是基于控制原理完全相同的HD44780液晶芯片,因此市面上的大部分字符型液晶能够很便利地应用基于HD44780写的控制程序。 1602LCD具有3.3V和+5V电压,本设计采用的是+5V的型号,器件内含有复位电路,可以调节对比度。具有清屏
29、、光标闪烁、字符闪烁、显示移位等功能。 1602LCD引脚功能如表2-3所示。表2-3 1602LCD模块功能引脚引脚号引脚名称电平引脚功能描述1Vss电源地2Vcc电源电压(+5V)3Vee对比调整电压4RS0/10输入指令1输入数据5R/W0/10向LCD写入指令或数据1从LCD读取信息6E10,1使能信号:10(下降沿)执行指令:1时读取信息714DB0DB70/18位数据线15A+VccLCD背光电源正极16K接地LCD背光电源负极 1602LCD的基本操作时序: 读状态输入:RSL,RWH,EH? 输出:DB0DB7状态字 写指令输入:RSL,RWL,E下降沿脉冲,DB0DB7指令码
30、 输出: 无 读数据输入:RSH,RWH,EH? 输出:DB0DB7数据 写数据输入:RSH,RWL,E下降沿脉冲,DB0DB7数据 输出: 无 1602LCD时序图如图2-11和图2-12 读状态输入:RS0,RW1,E1? 读数据输入:RS1,RW1,E1 图2-11 1602LCD时序图a 写指令输入:RS0,RW0,E下降沿脉冲,DB0DB7指令码 写数据输入:RS1,RW0,E下降沿脉冲,DB0DB7数据图2-12 1602LCD时序图b 为了节省单片机I/O口资源,本系统使用串行接口方式来设计电路,由于选择串行方式,故将15脚PS置低电平。显示模块主要接在单片机的P0口和P2口上,
31、电路连接的变阻器用于调节显示的对比度。2.6 无线通信模块 在本设计中,选用了nRF24L01无线模块作为系统无线通信设备,以传送投票情况和反馈信息,该模块是本系统设计的核心模块。对于多点表决信息进行传输,通常都要使用不同的数据通道来传输数据,而本系统设计的不同之处就在于使用相同的数据通道,传输时每帧数据的前两位为地址位,上位机通过地址位来区别不同的投票机,24L01具有125个不同的工作频道,这为多路数据传输带来极大的便利。 nRF24L01是单片无线收发器芯片,工作于2.42.5GHz世界通用ISM频段。无线收发器包括:频率发生器、增强型SchockBurstTM模式控制器、晶体振荡器、功
32、率放大器、调制器和解调器。可通过SPI接口设置输出功率频道选择与协议设置。此外,nRF24L01还具有极低的电流消耗,掉电模式和待机模式下的电流消耗最低,当工作于功率为-6dB,发射模式的电流消耗仅为9.0mA,接收模式时为12.3mA。 nRF24L01具有双向通信的功能,在处于接收状态时,接收端可以接收6路不同通道的数据,每个数据共用相同的频道,但是数据通道使用不同的地址。也就是说6个不同的nRF24L01设置为发送模式后可以与同一个设置为接收模式的nRF24L01进行通讯,而设置为接收模式的nRF24L01可以识别这6个不同的发射端。 根据nRF24L01的特性,设计中需要特别注意其工作
33、电压,范围是1.9V3.6V。另外,它有125个可选工作频道可供使用,具有适用于跳频的短切换时间。 nRF24L01的结构方框图如图2-13所示:图2-13 nRF24L01的结构方框图 引脚及其功能如表2-4所示: 表2-4 nRF24L01的引脚及其功能引脚名称引脚功能描述1CE数字输入RX或TX模式选择2CSN数字输入SPI片选信号3SCK数字输入SPI时钟4MOSI数字输入从SPI数据输入脚5MISO数字输出从SPI数据输出脚6IRQ数字输出可屏蔽中断脚7VDD电源电源(+3V)8VSS电源接地(0V)9XC2模拟输出晶体振荡器2脚10XC1模拟输入晶体振荡器1脚/外部时钟输入脚11V
34、DD_PA电源输出给RF的功率放大器提供了1.8V电源12ANT1天线天线接口113ANT2天线天线接口214VSS电源接地(0V)15VDD电源电源(+3V)16IREF模拟输入参考电流17VSS电源接地(0V)18VDD电源电源(+3V)19DVDD电源输出去耦电路电源正极端20VSS电源接地(0V) nRF24L01可设置以下几种模式如表2-5所示: 表2-5 nRF24L01主要工作模式模式PWR_UPPRIM_RXCEFIFO寄存器状态接收模式111?发送模式101数据在TX FIFO寄存器中发送模式1010数据发送完之前,停留在发送模式待机模式II101TX FIFO为空待机模式I
35、1?0无数据传输掉电模式0? 由于nRF24L01无线模块的工作电压是1.9V3.6V,所以本系统设计了5V转3.3V电压供电电路,以保证其工作在正常电压范围,其他功能管脚是与单片机的IO口连接的,主要接在单片机P0口上。2.7 报警模块 本设计设置了简单的错误操作报警提示功能,主要采用蜂鸣器声音报警。当单片机的P2.3口置低,通过PNP三极管,使蜂鸣器电路联通,蜂鸣器响起。因此当投票操作错误(超时投票、重复投票)时,P2.3口就会被置低,蜂鸣器就会响起,起到提醒作用。2.8 本章小结 本章详细介绍了基于无线通信的表决器系统设计硬件电路,通过单片机模块、供电模块、按键模块、液晶显示模块、无线通
36、信模块和报警模块这六个模块来介绍整个系统设计,并对使用到的芯片的功能和特性进行说明。第3章 软件设计 本系统的软件设计主要由单片机为核心的主机编程和投票分机编程构成,其中上位机编程主要包括无线通信程序设计、液晶显示子程序、指示灯子程序组成。投票机编程可分为系统主程序、按键子程序、报警子程序、无线通信分机子程序等4个部分。以无线通信为基础,以单片机为核心,达到多点投票数据采集的效果,并有蜂鸣器报警提醒等功能。3.1上位机系统程序设计 上位机上电后初始化,液晶显示开始界面如图3-1所示。图3-1 开始界面 此时系统显示画面一直显示主界面,等待接收投票机发送过来的信号,右起第一个绿色灯亮表示正常运行
37、中。 主界面上显示“yes”、“no”、“quit”、“RES” 分别表示“同意”、“反对”、“弃权”、“结果”,根据投票人的选择,依次在对应的位置下加1,投票结束后,若同意票多于反对票,则“RES”下显示“Y” ,同时绿色灯亮;若反对票多于同意票,则“RES”下显示“N”,同时红色灯亮;若反对票等于同意票,则“RES”下显示“Q”,同时黄色灯亮。各种投票情况如下图3-2、3-3、3-4所示: 图3-2 同意多于反对时的界面 图3-3 反对多于同意时的界面图3-4同意等于反对时的界面 上位机设置了复位键,当第一轮投票无效,或需要进行第二轮表决时,各个投票机复位后,上位机按下即可复位重新开始新一
38、轮的表决。 本设计使用同一数据通道传输可以简化程序,不需要再开设其他的数据通道,而且理论上每一数据通道可以实现上位机与125个投票机通信,大大增加了扩展的容量,达到125*6个。而采用不同数据通道,只可以开通6个投票机,显然很难满足实际要求。此外,按下确认后,投票机一直处于发射状态,这不仅避免了信息同时发送而导致传输失败的情况。此外,由于数据每个标志地址只能被接收一次,即使把投票机复位,也不能再次投票,可以避免同一轮表决中重复投票的现象。 液晶显示屏初始状态下,第一行显示“yes no quit RES” 第二行显示“00 0000” 初始化程序如下: sbit led2P10; sbit l
39、ed1P11; sbit led3P12; sbit led4P13; /led灯端口定义 sbit lcdrsP25; sbit lcdeP27; sbit lcdrwP26;/lcd端口定义 unsigned char TxBuf50; unsigned char RxBuf50; uchar data table yes no quit RES; /液晶屏第一行初始显示 uchar data table100 00 00 ; /液晶屏第二行初始显示 uint fashe00,fashe10,receive; uchar yes,no,quit,sum,result,STR_flag;vo
40、id write_comuchar com/写命令子函数lcde0;lcdrs0;Delay1;lcde1;Delay1;P0com;Delay1;lcde0;void write_datauchar dat /写数据子函数lcde0;lcdrs1;Delay1;lcde1;Delay1;P0dat;Delay1; lcde0;void write_shuuchar add,uchar dat /写入两位数函数uchar shi,ge;shidat/10;gedat%10;write_comadd;write_data0x30+shi;write_data0x30+ge;void displa
41、y /x显示write_shu0x80+0x40+0,yes;write_shu0x80+0x40+0x04,no;write_shu0x80+0x40+0x08,quit; 上位机只设置复位按键和开始按键,按下“开始”键后,子机才可以开始投票。void keyuchar tf 0;ifk1 0 Delay1;ifk1 0 while!k1; tf 1 ; /标示开始投票yes 0; no 0;quit 0; /清除之前数据result+;FMQ0; /蜂鸣器不响if tf1 nRF24L01_TxPacketTxBuf; / Transmit Tx buffer datatf0;Delay2
42、00;SetRX_Mode;Delay200;FMQ1; /蜂鸣器响 3.2 投票机系统程序设计 每个投票机设置了三个表决选项以及一个确认按键,分别为“同意”“反对”“弃权”及“确认”投票,投票开始前,投票机的绿红黄三色等轮流点亮,成流水灯状态,等待投票。按下相应的选项后,仅亮所投选项的灯(按下“同意”绿灯亮;按下“反对”红灯亮;按下“弃权”黄灯亮;)。确定无误后,按下“确认”按键,即发送信号到上位机。按下确认后,投票完成,此时投票机一直处于发射状态,即使将其复位,也不能重复投票。void keyifk20 /是否按下按键K2,按下时进入执行 delay2;/延时防抖 ifk20/确认按下K2
43、 while!k2;/等待松开按键flag1; /整型变量,当松开按键,设置其为1yes 1; /按下同意no 0;quit0;led_g1;/绿灯亮led_r0;led_y0;ifk00 /是否按下按键K0,按下时进入执行 delay2; /延时防抖 ifk00 /若按下K0键 while!k0; /等待松开按键flag1; /整型变量,当松开按键,设置其为1yes 0;no 1; /按下反对quit0;led_g0;led_r1; /红灯亮led_y0;ifk10/是否按下按键K1,按下时进入执行 delay2; /延时防抖 ifk10 /确认按下K1 while!k1; /等待松开按键f
44、lag1; /整型变量,当松开按键,设置其为1yes 0;no 0;quit1; /按下弃权led_g0;led_r0;led_y1; /黄灯亮ifk3 0 /是否按下按键K3,按下时进入执行 Delay1;ifk3 0 /确认按下K3 while!k3;/等待松开按键en_fs1;/确认发送3.3 本章小结 本章介绍了无线表决器系统的软件设计,对主要的控制子程序进行了分析。系统软件包括上位机编程和投票机编程两个部分,两部分程序独立工作。仅开通一个通信频道,即可实现多个投票机与上位机之间的相互通信,具有广阔的拓展空间。按下投票机确认键后,投票机一直处于发射状态,此时即使对投票机复位或断电重启,
45、也不能进行二次投票,这样可以避免重复投票的舞弊行为。第4章 系统安装调试 在本设计中,主要是分别进行软件仿真和硬件调试,然后软、硬件综合调试,逐步实现系统的各项功能。在调试中,分别对供电模块、无线通信模块、液晶显示模块、指示灯模块进行调试,各个模块调试成功后就可以联合上位机和投票机构成基于无线通信的表决器系统进行整体调试。4.1 系统软件调试4.1.1程序编译 本设计运用KeilVision3对程序进行调试并编译,编译后生成.hex文件。调试界面如图4-1所示:图4-1 Keil Vision3调试界面 通过keil编译生成.hex文件后,运用Proteus 软件对系统进行仿真调试。仿真的主要
46、作用是检测电路的连接和程序的设置,可以初步检验作品的效果。通过色点检查各个引脚的电平高低,可以避免器件因连接错误被烧坏等问题。 Proteus 软件仿真如图4-2所示:图4-2 Proteus 软件仿真图4.2 系统硬件调试 本系统设计主要制作了三块电路板,一个主机板,两个从机板。硬件调试首先必须确保电路板线路连接无误,所以完成电路板的制作后,先使用万用表检测电路板的线路连接情况。确保线路连接无误后,在进行各个模块的电路调试,检查各个模块是否能够实现相应功能。在各模块中应先调试供电模块,因为只有供电模块正常了,才能保证其他模块的运行,尤其是无线通信模块,必须保证其供电电压在1.9V3.6V之间
47、,否则就会烧掉无线通信模块。 供电模块分为5V供电模块和3.3V供电模块,各个模块主要由5V 电源供给,只有 nRF24L01无线通信模块需要3.3V供电。调试方法:将5V供电模块的USB接口接到电脑的USB接口中,经万用表检测5V供电模块的电压,测得电压值在4.7V5.1V之间变化,可判断供电处于正常范围;同理检测nRF24L01无线模块的电源及其两引脚电压,测得电压值在3.2V3.3V变化,因此,3.3V电压处于正常范围。 本调试的重难点在于无线模块的调试,通过与指示灯结合更便于调试。当投票机选中其中一个选项(如“同意”)后,按下确认键发送数据,上位机接收到数据后,通过程序使与选项对应的LED灯(绿色灯)亮起。而当投票机处在接收模式时,等待上位机发射信号,若投票机接收到信号,利用程序使各个选项指示灯轮流闪亮。调试状态如表4-1所示:表4-1 无线模块调试状态表所处模式指示灯投票机发送上位机接收对应选项的灯亮上位机发送投票机接收流水灯 液晶显示是结果汇总的窗口,有了它,表决器才起到了实际应用的效果。通过程序设置显示屏
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑拆除施工方案
- 道路施工消防安全管理方案
- 二元一次方程组的应用北京版七年级下册1
- 2026年交管12123驾照学法减分题库及参考答案【完整版】
- 未来五年干制鲳鱼企业数字化转型与智慧升级战略分析研究报告
- 2025年垫江县纪委监委下属事业单位招聘职业能力测试备考题库300道必考题
- 2025年云和县先进制造业开发区管委会招聘职业能力测试备考题库300道及答案1套
- 未来五年质检技术服务企业县域市场拓展与下沉战略分析研究报告
- 未来五年集团(总公司)总部管理服务企业ESG实践与创新战略分析研究报告
- 抹灰施工中外观检查方案
- DB3402-T 57-2023 医院物业服务规范
- 腰椎间盘突出患者术后护理课件
- 医院护理培训课件:《高压氧临床的适应症》
- 校服采购投标方案
- 固定修复基础理论-固位原理(口腔固定修复工艺课件)
- 合同能源管理培训讲义
- dd5e人物卡可填充格式角色卡夜版
- 剪映电脑版使用说明教程
- 腱鞘囊肿日间手术
- 标准化预制梁场验收表
- JJG 30-2012通用卡尺
评论
0/150
提交评论