本科毕业设计---基于单片机的远程监控系统设计说明书.doc
盐城工学院本科生毕业设计说明书( 2015)毕业设计说明书基于单片机的远程监控系统设计专业自动化学生姓名班级自动化112学号指导教师完成日期2015年6月5日毕业设计说明书(毕业论文)独创性声明本人声明所呈交的毕业设计说明书(毕业论文)是本人在导师指导下进行的研究、设计工作后独立完成的。除了文中特别加以标注和致谢的地方外,说明书中不包含其他人己经发表或撰写过的研究成果。对本文的研究所做贡献集体和个人,均己在说明书中作了明确的说明并表示谢意。本人完全意识到本声明的法律后果由本人承担。毕业设计说明书(毕业论文)作者签名(手写): 日期: 年 月 日指导教师签名(手写):日期: 年 月 日基于单片机的远程监控系统设计摘 要:以STC89C52单片机为控制核心进行远程监控系统的设计。实时监控高塔液位变化,监控过程智能化,LCD显示器实时显示液位值,当液位超过设定值的上限或下限时蜂鸣器报警,LED灯闪烁报警。根据远程监控系统的主要功能,提出了设计方案并进行了论证。设计包括硬件设计和软件设计两大部分。硬件部分包括单片机最小系统、矩阵键盘模块、无线收发模块、显示模块、报警模块五个部分。单片机选用宏晶科技公司的STC89C52;用矩阵键盘将输入的模拟液位数据值传给无线模块,并进行数据处理;用1602液晶显 示器显示高塔液位信息,并与输入值进行比较;用发光二极管和蜂鸣器对异常情况报警。软件采用了模块化的设计方法,主要分为主程序、无线发射模块子程序、无线接收子程序、按键检测子程序、液晶显示子程序、报警模块子程序六部分。对系统进行软硬件联调,实现了将模拟液位数据通过nrf24l01模块模块传输到另一个nrf24l01无线模块,通过单片机解码显示在LCD显示器上,当接收到的数值超过1000或小于10的时候蜂鸣器和发光二极管同时报警。关键词:nrf24l01;单片机;远程传输;显示器Design of Remote Monitoring System Based on MCUAbstract:The design of the remote monitoring system based on the STC89C52 microcontroller core is designed. Real time monitoring of the tower liquid level changes, monitoring process intelligent, LCD display real-time display of liquid level, when the level exceeds the set value of the upper or lower buzzer alarm, LED lights flashing alarm.According to the main function of the remote monitoring system, the design scheme is presented and demonstrated. Design includes two parts of hardware design and software design. The hardware includes the smallest single-chip microcomputer, the matrix keyboard module, the wireless transceiver module, the display module and the alarm module of the five parts. Single-chip selection macro crystal STC STC89C52; matrix keyboard input level simulating data value is passed to the wireless module, and data processing; 1602 LCD display tower liquid level information, and a comparison with the input value; light-emitting diode and the buzzer to alarm for abnormal situation. Software using modular design method, mainly divided into main program, wireless transmitting subprogram module, wireless receive subroutine, key detection subroutine, liquid crystal display subroutines, alarm module subroutine six parts. The system of hardware and software debugging, the simulation level of data through nrf24l01 module is transmitted to another nrf24l01 wireless module, through the microcontroller decoding display on the LCD display, when the numerical received more than 1000 or less than 10 ,the buzzer and the light-emitting will give an alarm.Key Words: Nrf24l01;MCU; Remote transmission; Display目录1概述11.1 课题研究背景与意义11.2 课题设计内容12方案设计选择22.1单片机选择22.1无线装置选择32.2显示模块选择42.4总体方案43硬件电路设计53.1最小系统模块53.2矩阵键盘电路设计63.3无线收发电路设计73.3.1 nrf24l01概述83.3.2引脚功能及描述83.3.3工作模式93.3.4工作原理103.3.5配置字103.4 LCD显示模块114软件系统设计134.1总流程图设计134.2矩阵键盘电路软件设计144.3无线发射模块软件设计154.4无线接收模块软件设计164.5 LCD1602显示器软件设计174.6蜂鸣器报警电路185系统的调试及实验结果205.1 调试步骤205.2实验结果20结 论22参考文献23致 谢24附 录25附录1:发送电路部分程序25附录2:35发送电路电路图:35接收部分电路图:36附录3:元器件清单37盐城工学院本科生毕业设计说明书( 2015)1概述1.1 课题研究背景与意义此课题属于应用型的课题,所以结合了实际的情况进行分析后再进行硬件设计和软件设计。在人们的日常生活、娱乐和工作中,远程控制得到非常广泛的应用。从家电遥控到大型机器远程操作,从手机到笔记本电脑,以及现在的工厂的设备检修和维护等,几乎所有现代化的电器机器设备都要用到远程控制。远程控制为人们的工作生活提供了极大的安全性、便利性、快捷性。得益于信息高速公路的快速建设,无线网络技术也赶上了这趟高速列车,与此同时,远程控制技术也悄然的登上了这辆高速列车。在信息时代的各个领域的中的应用显得越来越突出,扮演的角色也越来越重要。作为信息时代的产物,远程控制技术在工业生产方面扮演着不可替代的角色,应用在企业生产器械上能有效的减少错误率、提高精度、提高生产效率,同时还能为企业节约开支减少人工成本,为企业带来生产之外的效益。因为处于爆炸式的信息时代中,移动通讯技术的日趋成熟,这使得我们在日常生活中可以非常轻松的去搞定某些本来需要我们亲临现场去办的事情。比如说现在的无线温度监测,就很好的体现出了远程控制系统和传统行业的完美结合,这意味着传统行业可以很轻松的将以前需要大量的人力、物力才能搞定的事情,现在只需要坐在办公室里面动动手指头就能将数据采集回来,然后通过计算机处理后生成报告。无线数据传输技术的发展不仅能节约企业的成本提高企业的效益,同时还能给其带来领先同行的先机。无线数据传输技术优点多,不仅简单易用,成本低,效率高,收益长远,抗干扰能力强,再结合微机和互联网进行使用便可以胜过传统有线传输。1.2 课题设计内容以STC89C52单片机为核心,并结合外围电路设计远程监控系统。系统具有采集、无线发送、对应显示、异常报警功能。具体如下:a) 矩阵键盘采集数据;b) 无线模块首发数据;c) LCD显示数据;d) 数据异常时蜂鸣器报警。2方案设计选择由于目前远程控制技术的控制方式是多种多样的,我们通常把他们分为无线遥控、声控和红外遥控。现在讨论一下这几种无线控制方式的优点和缺点。2.1单片机选择单片机作为信息时代的产物,收到许许多多的企业和个人青睐,从目前的发展状况和应用的角度上来看,可以将单片机粗略的分为总线型单片机。非总线型单片机、通用型单片机、专用型单片机、商业应用型单片机、企业生产型单片机、家庭应用型单片机等。总线型单片机提供并行总线。在其内部设置诸多总线。例如:控制总线可以用来控制外部引脚、数据总线用于与外部进行数据传输、地址总线用来寻址等。控制型单片机主要应用于大型机械生产加工上以及各类家电的控制上。一般来说,工控型单片机具有运算能力强、寻址范围大等优点:家用型单片机一般是专用型的,比如我们生活中的空调、电视机、电饭锅、电磁炉等都需要用到这种封装小、价格低、易操作、集成度高、抗干扰较强的单片机。此单片机针对性较强,但比较局性。通用型单片机的适用范围较广,既能适用于工业控制,又能适用于家庭生活等。缺点是没有针对性。这种单片机的应用较多,资料齐全,易上手。对于初学者是一个不错的选择。STC89C52单片机是宏晶科技有限公司生产的一种适用性强、实用性高、能耗低、具有比较大的可编程空间、被市场广泛认可的单片机。STC89C52单片机选用经典的MCS-51作为内核使用,以此为基础做了许多的改良使得芯片的功能比传统的51单片机更加的强大。因为单片机提供了8K的可编程flash存储,所以使得单片机可以在很多的可嵌入式系统中得以使用,并发挥出良好的性能。所以在此我选用89C52单片机作为主控芯片。STC89C52的引脚图如图2-1所示。图2-1 STC89C52的引脚图2.1无线装置选择a)红外遥控:红外遥控技术是一种非直接接触式的无线控制技术,在现实生活中使用能节约成本、降低功耗、遥控的实现较为容易,传输数据的可靠性强、实用性高、抗干扰能力强、适用于多种环境等诸多优点。因为红外遥控的诸多优点,所以红外遥控技术也被许多的电子设备的厂商所青睐,在目前的电子设备中红外遥控技术被应用的最多的当属家用电器,因为实用性强也越来越受到大众用户的喜爱。但由于红外线的光谱特性使得红外信号无法穿透障碍物,从而阻碍了无线信号的传输,同时失去了对被控对象的控制。所以不能作为远距离传输的选择,只能在小范围内的对电阻器件进行控制。b)声控:利用声音进行控制的远程监控系统的穿透力比较好,可以避开障碍物进行控制,但却因声波信号的频率问题容易受到其他声音的干扰;传输过程中弱化的较快,所以传输距离非常有限。所以在远程监控系统中声控方式不太适用。c)无线遥控:无线遥控中采用无线电进行接收和发送数据。因为无线电的传输不需要依靠介质,并且无线电采用0和1的的二进制编码进行数据传输,所以在传输数据时,其可靠性较高。无线电能传输较远的距离而不失真,所以被广泛应用于通话设备中,如:对讲机、手机等。同时无线传输技术还具有良好的抗干扰性能、可以大面积的覆盖、直接穿透障碍物等有点而被大众所喜爱。在厂房公用设施上:门形框架、工业用门、升降柜、平台、照明的控制等。在农业生产方面如:无线水库水位监测、稻田液位检测、大棚蔬菜内的二氧化碳含量、鱼塘里的含氧量等。在工业生产方面有:无线监控机器设备运转状况,无线检测厂房内的尘埃颗粒以及温度等有可能影响良品率的因素,厂房内的传动设备等。在交通方面,比如现在的无人驾驶技术。d)方案选择:根据以上对三种遥控技术的讨论,选用无线遥控作为系统设计的无线传输方式。2.2显示模块选择从液晶显示器可以显示的内容来区分,可以将液晶显示器分为点阵式、字符式、段式。目前使用较多的是LCD12864和LCD1602,12864 的像素点是128*64,能显示8*4个汉字,因其有多种型号,有的带有汉字字库,有的没带,显示图像的效果较好,功能比1602强大。而LCD1602属于字符型,专门用于显示字母、数字、符号和几种自定义符号。它最多能显示2行*16个字符。1602价格便宜,而12864价格稍贵,在编程使用方面,两者难度差不多,原理差不多,都是写地址、写指令、写数据等。因为在设计中只需要将发送模块的数值传输到接收模块,再出于经济实惠方面考虑,所以采用LCD1602作为显示模块。LCD1602外观图如图2-2所示。图2-2 LCD1602外观图2.4总体方案课题的设计采用了2.4GHz频段的nrf24l01射频芯片,芯片特点是功耗低,效率高。并且在课题中用用了被大众所广泛使用的STC89C52单片机来控制无线接收模块和无线接收模块,因为使用了无线电传输技术,所以可以很好的进行近距离和较远距离的无线通信。所以设计好的系统具有以下优点:低成本设计、功率消耗小、传送速度快、硬件电路设计相对简单、通讯信号相对可靠稳定、实用性强。整个通讯系统由接收数据模块和发送数据模块一同组成,在数据接收和发送中采用的硬件模块是挪威公司生产的nrf24l01,以及后期生产中添加的一系列外围电路。发送数据部分使用单片机STC89C25作为核心控制中心,数据采集模块使用矩阵键盘进行模拟采集,然后将所得到的数据吸入LCD中,最后显示出来。接收部分同样使用C52单片机最为核心,将发送端发送过来的数据进行处理,然后通过1602显示出接收到的数据,如果发送数据模块显示器上的数据和接收数据模块显示器上的数据显示是一致的,则表示数据成功的发送和接收。3硬件电路设计信息时代下,数据通过无线传输的方式在我们的工作、生活以及各种勘察中经常被使用到,随着生活水平的不断提高和科学技术的不断进步,对于无线数据传输的精度的要求也越来越苛刻。在设计中无线收发模块将矩阵键盘中的键值发送给接收模块,然后在LCD液晶屏上显示出来,再对比发送模块的液晶显示屏上的数值,判断发送和接收是否对应。因为将单片机和无线模块的相互配合着使用,所以能解决传统工艺上的许多不足。在传统工艺上,如若需要传输数据还得通过布线的方式进行,此方式费时费力效率低,而通过无线传输的方式就能很好的解决这个耗时耗力的事情。在设计中我采用了nrf24l01作为收发数据的核心控件,将STC89C52单片机作为主控处理器,同外加矩阵键盘、蜂鸣器和液晶显示模块组成整个系统。如图3-1所示。图3-1 系统总体架构图3.1最小系统模块系统设计使用STC89C52当作主控CPU。单片机最小系统,也被称作单片机最小应用系统,是指用最少的元器件组合使得单片机可以正常工作的系统。对于51系列的单片机来说,最小应用系统一般包括:51单片机、复位电路、时钟电路。这里设计的STC89C52最小系统中包括复位电路、晶振电路并介绍了各部分的功能。a)在最小时钟电路中,单片机将XTAL1、XTAL2和RST提供出来给外围时钟电路和复位电路。b)复位电路是用来将单片机系统恢复到初始状态的一种电路设备。在单片机系统设计中复位电路可以确保单片机系统中电路可靠稳定的工作,复位电路的主要功能就是利用按键进行上电复位。复位电路如图3-2所示。图3-2 复位电路图c)晶振电路51系列单片机时钟模块。如图3-3所示。图3-3 晶振电路3.2矩阵键盘电路设计矩阵键盘是在单片机外部设备使用中类似于矩阵排布的键盘组。发送端的矩阵键盘接线如图3-4所示。图3-4 矩阵键盘如图所示,4*4的矩阵键盘一共使用了8个数据口,其中水平的四根线接在单片机的P0.0P0.3数据口,垂直的四根线接P0.4P0.7数据口。在P0口和矩阵键盘之间再并一个1K的上拉电阻为键盘供电。1K的上拉电阻不仅给矩阵键盘提供外部电源同时还将P0口的电平稳定在高电平,如果键盘中有按键被按下的话,单片机就能检测到低电平,继而单片机能判断出键盘中有没有某个键被按下。当把单片机作为主控制器设计电路时,如果要使用比较多的按键的时候,我们一般可以用矩阵排列的方式来排列单个键盘,这样做的目的是减少宝贵的数据口的占用比例。矩阵键盘是通过行线和列线交叉互错排列的,然而交叉点并没有直接相连,而是通过一个独立按键将行线和列线连接起来。这样能产生的可使用的键盘数就是行线和列线根数的乘积。如整个P0口最多能放置4*4个键盘用来构成矩阵键盘。和独立式键盘的接法相比,能用最少数据口组合出最多的按键。这样,当我们需要使用较多按键时就能使用这种方式来节约I/O口的使用。3.3无线收发电路设计无线收发模块的组成是:nrf24l01为核心控制器,辅助以16MHz的时钟电路,然后再在外围电路中加入六个SPI、一个电源口、一个接地口。无线模块的射频技术标准是采用了全球的通用免费频段。2.4GHz的频段。SPI口的功能主要就是写入数据、发送数据、接收数据、读出数据。在写入的数据的时候速度可达10MB/S,发送数据最大速度可达2MB/S。芯片还具有许多比较好的功能,比如收发数据时能够自动应答,以检测数据是否发送成功同时又能知道接收方是否接收成功。自动重发功能可以在数据为接收成功的情况下,发送端根据检测到的信号重新对接收端进行数据发送。无线模块的工作能耗低,在发送数据的时候工作电流为11.3mA,接收数据时的工作电流为12.3mA,这种低能耗的产品正是适用于我们现在的低碳社会中。可以有效的传输数据,又能很好的较低能耗,深受广大厂商的喜爱。还有空闲模式来进一步减少能耗。在使用 nRF24 L01时将其 CE、 CSN、 IRQ、 MISO、 MOSI、 SCK六个引脚和 stc89 C52的 P1口相连接,为了防止电流过大而烧毁无线模块,在单片机 P1口与nrf24l01的各引脚之间串接一个2K的限流电阻。无线模块和单片机的连接图如图3-5所示。图3-5 nrf24l01与单片机连接无线模块和单片机相连接时引脚分配如表3-1所示。表3-1 无线模块引脚分配表nrf24l01引脚接法VCC3.3VCEP1.0CSNP1.1CSKP1.2MOSIP1.3MISOP1.4IRQP1.5GND接地在为无线模块提供3.3V的稳压模块上,在其3.3V的输出端口需要并联一个104和一个22up的电容来过滤波形使得nrf24l01在无线收发时更加的顺畅。3.3.1 nrf24l01概述 nrf24l01内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了Shock Burst增强型技术,其中通信频道和输出功率可通过C程序进行配置。nrf24l01主要特性如下: 1、GFSK调制,硬件集成OSI链路层; 2、具有自动应答和自动再发射功能; 3、片内自动生成报头和CRC校验码; 4、数据传输率为l Mb/s或2Mb/s;5、SPI速率为0 Mb/s10 Mb/s;6、125个频道与其他nRF24系列射频器件相兼容; 7、QFN20引脚4 mm×4 mm封装;8、供电电压为1.9 V3.6 V;3.3.2引脚功能及描述 nrf24l01的引脚排列和封装如图3-6所示。图3-6 nrf24l01封装图CE:使能发射或接收; SCK,CSN,MISO ,MOSI:SPI引脚端,单片机通过这四个引脚配置nrf24l01;IRQ:中断标志位;VDD:电源输入端(+3.3V); VSS:电源地(0V);XC2,XC1:16Mhz晶振引脚; VDD_PA:给无线模块的功率放大器提供+1.8 V的电源; ANT1,ANT2:天线接口;IREF:参考电流输入。3.3.3工作模式通过配置寄存器可将nrf24l01无线收发模块配置为待机模式、掉电模式、发送模式、接收模式这四种工作模式,如表3-2所示。 表3-2 nrf24l01主要工作模式模式CEPWR_UPPRIM_RXFIFO寄存器状态接收模式111-发送模式110数据在TX FIFO 寄存器中发送模式1010停留在发送模式,直至数据发送完待机模式110TX_FIFO为空待机模式01-无数据传输掉电模式-0- 待机模式主要用于降低元件的功率损耗,在此模式下晶振依然以较低的频率持续工作着;待机模式则是在当TX_FIFO寄存器为空且CE使能时进入这种模式。待机模式下,所有寄存器配置的值仍然保留。在掉电模式下元件的功率损耗为最小值,同时nrf24l01处于不工作状态,但所有寄存器配置的内容保持不变。3.3.4工作原理a)发送数据:首先将无线收发模块配置为发送模式,将9字节宽的接收地址和9字节宽的发送地址TX_ADR按照时序从SPI口写入无线收发模块的缓存区。初始化I/O口,将CE置低电平、拉高CSN、CSK置低电平、。完成准备工作后根据SPI协议,将有效数据TX_PLOAD按照时序写入无线收发模块的缓存区中。必须在CSN置低电平后才能开始传输数据并且连续写入。而接收和发送的地址只要在发送时写入一次即可。选择寄存器,同时返回状态字,然后将数据写入寄存器中,拉高CSN,结束数据传输,返回寄存器。从寄存器中读出接收通道和收发地址。使CE使能至少10us,启动接收设备,延时130us后开始传输数据。如果发送模块的自动应答已经开启,那么nrf24l01将数据发送完毕后即刻进入接收模式,等待接收模块的反馈信号(自动应答的接收地址和接收模块的接收地址一样都为TX_ADR)。如果发送模块接收到应答,则默认为此次发送通信已经成功,将TX_DS拉高,同时将缓存中的有效数据清除;如果未能收到反馈信号,则发送模块自动启动重发功能,重新发送缓存中的有效数据(自动重发已经开启,自动重发计数器不等于0,ENAA_P0=1)。如果重发次数(ACR)到达上限(上限为自动重发10次),将MAX_RT电平拉高,保留缓存中的有效数据以便再次发送;是IRQ置低电平,产生中断,通知单片机,减少单片机的查询时间。发送数据成功后,如果将CE置低电平,则系统自动进入待机模式 I ;如果不将CE置低电平,则系统会自动将 TX FIFO 寄存器中的下一包数据进行发送;如果 TX FIFO 寄存器为空并且 CE 为高则系统进入待机模式 II。b)接收数据:接收数据时,首先拉高CE将nrf24l01配置为接收模式,接着延迟130s后检测空中信息等待数据的到来。接收到有效的数据包后(地址匹配、CRC 检验正确)数据存储在 RX_FIFO 中,同时 RX_DR 位置高,IRQ置低,并产生中断,通知单片机去读取数据。如果使能自动确认信号,则发送确认信号。最后接收成功时,若单片机将CE口置低,则nrf24l01进入待机模式1。在将数据写入寄存器之前一定要进入掉电模式或待机模式。3.3.5配置字 常用的配置寄存器如表3-3所示。表3-3 常用配置寄存器地址(H)寄存器名称功能00CONFIG设置24L01工作模式续表 3-3 01EN_AA 设置接收通道及自动应答02EN_RXADDR使能接收通道地址03SETUP_AW设置地址宽度04SETUP_RETR设置自动重发数据时间和次数07STATUS状态寄存器,用来判定工作状态0A0FRX_ADDR_P0P5设置接收通道地址10TX_ADDR设置接收接点地址1116RX_PW_P0P5设置接收通道的有效数据宽度3.4 LCD显示模块LCD1602与单片机连接如图3-7所示。图3-7 1602连接图表3-4 1602各管脚和单片机连接管脚号符号接法和功能1VSS接地(电源地)2VDD接+5v电压(电源电压)3V0调节LCD灰度4RS发送端接P1.6接收端接P0.6(写命令和写数据)续表 3-45R/W接地6E发送端接P1.7接收端接P0.7(使能端)7DB0接P2数据口用于接收单片机传出的数据8DB19DB210DB311DB412DB513DB614DB715A背光调节接+5V16B背光调节接0V4软件系统设计4.1总流程图设计程序设计发送端总流程图如图4-1所示。图4-1 发送端程序总流程图程序设计接收端程序总流程图如图4-2所示。图4-2 接收端程序总流程图4.2矩阵键盘电路软件设计矩阵键盘扫描读取键值流程图如图4-3所示。图4-3 矩阵键盘扫描矩阵键盘同普通的独立式按键的接法不同,每一个按键都接了行线和列线,这样的接法能节省单片机宝贵的数据口,但是在键盘的识别中相对要复杂一些。将行线和列线这8跟线依次接到P0口中,因为P0口不提供电压,所以我们需要在P0口并联一个1K的上拉电阻为矩阵键盘供电。此时,如果矩阵键盘中没有按键被按下的话,P0口的电平呈高电平。当行线和列线中同时出现低电平时,代表有按键按下。这样就能确定键值,从而得到数据。确定矩阵键盘上的哪个按键被按下了,扫描方式如下。低四位逐行扫描,扫描之后马上读取键值,将低四位屏蔽。扫描高四位,当高四位不全为1时,说明有按键被按下。此时延时去抖动。确认有按键被按下后根据按键所在的行和列确定按键号。给对应的按键赋值。当一个扫描完成后返回初始状态。4.3无线发射模块软件设计首先对nrf24l01进行初始化操作,初始化操作部分包括对单片机的P1口中P1.0P1.5进行初始化同时也要将接在这六个口中的无线模块的六个SPI进行初始化。将这两部分初始化成功后才能让在nrf24l01模块之间建立通信。发送数据时,通过给PRIM_RX寄存器低电平进入发送模式。然后把接收地址节点和发送节点地址都写入nrf24l01中,将通道0设置成接收模式,启动自动应答模式。拉高CE,延时10us后发送程序。其流程图如图4-4所示。图4-4 无线发射模块软件流程图4.4无线接收模块软件设计同样的,在接收模块接收数据的时候,先将单片机的数据口进行初始化同时将无线模块的六个SPI初始化。将无线收发模块的PRIM_RX寄存器置高进入接收模式。紧接着延时130us后检测数据是否传来。当接收模块检测到同接收地址一样的发送地址,就将接收到的数据包写入缓存中,同时将RX_DR 位置高,并且产生中断使得 IRQ 引脚变为低电平,此时以便通知单片机去取接收数据,其流程图如图4-5所示。图4-5 无线接收模块软件流程图4.5 LCD1602显示器软件设计发送模块中LCD1602显示器显示键盘值流程图如图4-6所示。图4-6 发送模块LCD显示流程图图示信息为单片机将在矩阵键盘中读到的数值处理后通过P2口的数据总线写入LCD1602中。接收模块中LCD1602显示器显示nrf24l01接收到的数值流程图如图4-7所示。图4-7 接收模块LCD显示流程图单片机将接收到的数据通过P2口总线写入LCD中,然后对比发送模块中的数据,看发送和接收是否成功。4.6蜂鸣器报警电路蜂鸣器报警电路流程图如图4-8所示。图4-8 蜂鸣器报警电路流程图报警电路是针对某些环境下,采集到的数据超过了原先设定的值,从而报警提醒。5系统的调试及实验结果调试电路分为两部分,一部分是硬件电路调试,另一部分是软件调试。这两者又密不可分,在调试硬件的时候要用到软件进行测试,在软件调试的时候又得以硬件电路为基础。所以在调试的时候采用软硬件联合调试的方式。这种方式可以很方便的查找出硬件上的一系列问题,检查电路的焊接是否到位。硬件没问题之后便可以全心全意的进行软件调试。5.1 调试步骤步骤一 完成硬件电路的焊接。步骤二 首先将其中一片C52系统与LCD用杜邦线相连显示,再接入矩阵键盘,写入矩阵键盘扫描程序及LCD初始化先是程序,检验LCD显示和矩阵键盘没有问题。步骤三 将nrf24l01无线模块接入发送和接收系统中,写入发送简单数据和接收的程序,设定接收模块接收到数据时P1.7口的蜂鸣器响,证明无线收发模块能正常工作。步骤五 将显示、收发、矩阵键盘程序整合,检测系统是否能将接收端的LCD上显示的字符和发送端LCD上显示的字符一样。步骤六 在发送端写入超过1000的值,检测接收端接收到>1000的值时,蜂鸣器是否报警。5.2实验结果经实验要求及实验的目的,对系统进行了一些动态值的测量,具体结果如表5-1所示。表5-1 数据测试表测试数据值发送端电流2.6mA接收端电流9mA收发端电压3.3V发送端功率8.58mW接收端功率29.7mW收发距离>30m从表中能看出发送数据和接收数据时都维持在低功耗,基本满足设计要求。发送端成品如图5-1所示。图5-1 发送部分成品将接收到的数据经单片机处理后在LCD上面显示出来。接收部分成品如图5-2所示。图5-2 接收部分成品结 论在老师的指导和同学们的相互帮助之下,几经调试和重新焊接电路,设计的实物已经达到了预期的目标。从确定课题后,上网查找有关无线模块的资料和相应的各种可运行的程序,矩阵键盘的多种扫描方式体现出了不同的编程思想,这些都是值得我们学习的。在LCD的选择上充分利用了1602的物美价廉好编程的特点。在设计硬件的过程中原先将无线收发模块接在了单片机的P0口上,致使后期的程序调试始终未能成功,后来查找nrf24l01的资料后才知道所使用的上拉电阻太小了,应该使用10K的上拉电阻才能在P0口正常的使用nrf24l01模块,而使用1K的上拉电阻是不行的。因为当初购买元器件的时候没有购买10K的上拉电阻,并且其他实验室里面也同样未能找到相同阻值的上拉电阻,所以将无线收发模块转接到单片机的P1口上,再在无线收发模块和单片机P1口之间串接2K的电阻用于限流,以保护nrf24l01模块。因为nrf24l01模块需要用到3.3v的电压,所以我采用了1117稳压芯片来为其供电,但作为无线传输模块,数据在传输中可能会受到外界的干扰,所以在1117的3.3V输出电压端口我并联了一个104和一个22uf的电容来过滤干扰信号。在设计的过程中虽然遇到过种种困惑,但只要能沉下心来好好的想想,再向指导老师和同学们请教请教,终究是能把问题解决的。在设计的过程还存在许多的不足之处,比如在焊接电路的过程中由于缺乏系统的布线安排导致电路板上的线比较乱,在焊接中有时还会出现两个点焊接到一块的情况,这是非常危险的事情,很有可能在接通电源之后就将电路给烧毁了,出现的这些原因都是平时的基本功不够扎实的原因,在日后还得进一步的夯实自己的基本功才能做出一个更加实用和美观的电路板。参考文献1 戴佳,戴卫恒,刘博文.51单片机C语言应用程序设计实例精讲M.北京:电子工业出版社,2008.122 薛小铃,刘志群,贾俊荣.单片机接口模块应用与开发实例详解M.北京:北京航空航天大学出版社,2010.13 张俊.匠人手记M.北京: 北京航空航天大学出版社,2008.44 周坚.平凡的探索M. 北京: 北京航空航天大学出版社,2010.105 唐继贤.51单片机应用系统开发实例精解M.上海:上海科学技术出版社,2012.16 刘建辉,冀常鹏等.单片机智能控制技术M.北京: 国防工业出版社,2007.47 王巧芝,郑锋,刘瑞国,高学辉. 51单片机开发应用从入门到精通M.北京:中国铁道出版社,2011.48 宋戈,黄鹤松,员玉良等.51单片机应用开发范畴大全M.人民邮电出版社:2012.4 9 江志红.51单片机技术与应用系统开发案例精选M.北京:清华大学出版社,2008.310 唐继贤. 51单片机工程应用实例M. 北京:北京航空航天大学出版社,2009.111 龙脉工作室.51单片机C语言应用开发技术大全M.北京:人民邮电出版社,2008.8 12 谭浩强.C程序设计北京M.北京:清华大学出版社,1999.1013 胡汉才.单片机原理及其接口技术M.北京:清华大学出版社,1996.1214 郭天祥51单片机C程序教程M北京:电子工业出版社,2009.1.15 何立民等.单片机外围器件实用手册M.北京:北京航空航天大学出版社,2003.516 彭为.单片机典型系统设计实例精讲M.北京:电子工业出版社,2006.6致 谢经过一个学期的工作和努力,毕业设计也已经成型。在制作本页设计的过程中,由于没有前期经验,所以有许多没有照顾到的地方。但是经过不断的摸索,不断的查找资料,不断的测试中将目标结果调试出来。在这里我首先要感谢一下我的指导老师陆广平老师。是她的耐心的教导,才让我能顺顺利利的将无线收发模块焊接好,并调试成功。她让我减少了许多工作量,让我的犯错误率大大的降低了。其次我要感谢那些帮助我督促我完成我的毕业设计的同学们。是你们的正能量让我能够每天七点多就能起来和你们一道来到实验室;是你们无私的将你们的经验还无保留的传教给我,你们既是益友更是良师。你们的帮助让我深深的感到一个好汉同样需要他人的帮助的。感谢大学四年来,传授我知