基于单片机的无线远程温度监控专业系统设计.doc
《基于单片机的无线远程温度监控专业系统设计.doc》由会员分享,可在线阅读,更多相关《基于单片机的无线远程温度监控专业系统设计.doc(51页珍藏版)》请在咨信网上搜索。
编号:34140143 本科毕业设计 基于单片机无线远程温度监控系统设计 系 院:信息工程学院 姓 名: 学 号: 专 业:通信工程 年 级:级 指引教师: 职 称:副专家 完毕日期:5月 摘 要 本文阐述远程温度控制是将无线发射与接受和自动控制相结合一种控制。基于这种技术,本系统以AT89S51系列单片机为控制单元,采用Dallas单线数字温度传感器DS18B20和无线收发模块NRF24L01对实验现场温度数据进行远程无线测量与控制。整个系统涉及主、从两个子系统,其中主系统完毕对实验现场设定温度值、设定值显示、实际值显示、失控报警和接受数据功能;子系统完毕温度采集、温度控制和发送数据功能。该系统构造简朴实用、功能齐全,通用性强,可被应用于许多工业生产领域,它可使操作人员与恶劣工作环境分离开来,实现生产自动化,提高公司生产效率。 核心词:AT89S51;温度传感器;NRF24L01;显示;报警 Abstract The long-distance temperature controlling this paper presents is a technology of linking wireless receiving and sending to automation. Based on the technology,the system is based on the control of AT89S51 SCM,using Dallas single line digital thermometer DS18B20,wireless receiving and sending module NRF24L01 to test and control the temperature data of a experiencing place. The whole system consists of the main system and subsystem. The main system completes the functions of initializing and displaying the temperature value,displaying actual temperature,alarming when it is out of control,and receiving. The subsystem completes the functions of receiving,and temperature collecting,controlling,and sending. The design concludes that this system has many advantages,such as its uniqueness,simple,convenience,and such common using. It can be widely used in lots of industrial producing and controlling fields,applying this system can depart operators from execrable environment,realize producing automation,and improve corporation’s producing efficiency. Key words:AT89S51;Temperature senior;NRF24L01;Display;Warning 目 录 1 绪论 1 1.1 选题目和意义 1 1.2 国内外研究现状 1 1.3 本设计重要研究内容 2 2 设计规定与方案论证 3 2.1 设计规定 3 2.2 系统基本方案选取和论证 3 2.2.1 单片机芯片选取方案与论证 3 2.2.2 温度采集模块选取方案与论证 3 2.2.3 无线收发模块选取方案与论证 4 2.2.4 显示模块选取方案与论证 4 2.2.5 报警模块选取方案与论证 4 2.3 电路设计最后方案拟定 5 3 系统硬件设计与实现 6 3.1 系统硬件概述 6 3.2 重要单元电路设计 6 3.2.1 单片机主控制模块设计 6 3.2.2 温度采集电路模块设计 7 3.2.3 无线收发电路模块设计 8 3.2.4 显示电路模块设计 10 3.2.5 报警电路模块设计 11 3.2.6 电路原理及阐明 12 4 系统程序设计 13 4.1 主程序设计 13 4.2 发射系统程序设计 16 4.3 传播程序设计 16 4.4 温度采集程序设计 17 4.5 显示程序设计 18 5 仿真与调试 20 6 结论 23 参照文献 24 致 谢 25 附录 26 1 绪论 1.1 选题目和意义 温度是工业生产中常用被控参数之一。从食品生产到化工生产,从燃料生产到钢铁生产等等,无不涉及到对温度控制,可见,温度控制在工业生产中占据着非常重要地位,并且随着工业生产当代化,对温度控制速度和精度也会越来越高。近年来,温度控制领域发生了很大变化,工业生产中对温度控制不再局限于近距离或者直接控制,而是需要进行远距离控制,这就产生了远程温度控制。 远程控制通信方式有各种,如通过有线网络、无线电等等。每一种方式均有其长处和缺陷。运用无线电通信,以便、灵活,并且经济。它不需要像有线网络控制耗费巨大通信资源,也不受网络速度影响。 在温度控制办法上,老式控制办法(涉及典型控制和当代控制)在解决具备非线形或不精准特性被控对象时十分困难。而温度系统为大滞后系统,较大纯滞后可引起系统不稳定。 在温度采集办法上,普通是运用热电偶把热化为电信号,再通过A/D转换得到温度值。这种办法速度慢,并且精度不是很高。综合上面考虑,本次毕业设计设计了基于无线电通信远程温度控制系统。 当代工业设计、工程建设及寻常生活中经常需要用到温度控制,初期温度控制重要应用于工厂中,例如钢铁水溶温度,不同级别钢铁要通过不同温度铁水来实现,这样就也许有效运用温度控制来掌握所需要产品了。在当代社会中,温度控制不但应用在工厂生产方面,其作用也体现到了各个方面,随着人们生活质量提高,酒店厂房及家庭生活中都会见到温度控制影子,温度控制将更好服务于社会。 近年来,单片机发展十分迅速,一种以微机应用为主新技术革命浪潮正在蓬勃发展,单片机已经渗入到工业、农业、国防,科研以及寻常生活等各个领域。老式温度采集办法不但费时,并且精度差满足不了各行业对于温度数据提高精度,设备高可靠性需求。单片机浮现使得温度数据采集和解决得到了较好解决。选取恰当单片机和温度传感器以及前端解决电路,可以获得较高测量精度,不但以便快捷,成本低廉,省事省力,并且大幅度提高了测量精度。 1.2 国内外研究现状 在人类生活环境中,温度扮演着极其重要角色。无论你生活在哪里,从事什么工作,无时无刻不在与温度打着交道。自18世纪工业革命以来,工业发展对与否能掌握温度有着绝对联系。在冶金、钢铁、石化、水泥、玻璃、医药等行业,可以说几乎所有工业部门都不得不考虑着温度因素。 当前国内外对于温度监控研究和应用已非常普遍,但对于无线远程温度监控这方面研究和应用尚有相称大提高空间。无线温度监控不但可以应用在工厂生产方面,其作用也体现到了各个方面,随着人们生活质量提高,酒店厂房及家庭生活中都将会见到它影子,无线远程温度监控将会有更辽阔发展空间。 1.3 本设计重要研究内容 本设计是基于单片机无线温度监控系统,通过大量查阅资料和研究,最后拟定采用AT89S51为主控芯片,DS18B20作为温度采集芯片,NRF24L01作为无线接受和发射模块,采用LCD1602液晶屏进行显示。该系统由发射系统和接受系统构成,发射系统进行温度采集以及数据发射,接受系统作为主系统,对数据接受解决并显示出来。该系统具备温度过限报警功能,设有4个独立按键,分别进行温度高低限定值选取、设定,清除报警声和报警灯。该系统具备操作以便,远距离操控,功能多样,电路简洁,成本低廉等长处,符合电子技术发展趋势,有很辽阔市场前景。 通过设计和一系列调试,测试成果基本达到了该设计预期制定各项规定,顺利地完毕了本次毕业设计目的。 2 设计规定与方案论证 2.1 设计规定 (1)温度监测范畴:室温~125℃; (2)接受系统显示温度实际值,收发距离:60米以内; (3)可以人工设定报警温度上、下限定值; (4)超过温度限定值时蜂鸣器报警和发光报警。 2.2 系统基本方案选取和论证 2.2.1 单片机芯片选取方案与论证 方案一:采用FPGA(现场可编程们阵列)作为系统控制器。FPGA可实现各种复杂逻辑功能,规模大,密度高,它将所有器件集成在一块芯片上,减小了体积,提高了稳定性,并可用EDA软件仿真、在线调试,易于进行功能扩展,响应速度快。但成本高,同步由于引脚较多,电路板布线比较复杂,加重了电路设计和实现焊接工作。 方案二:采用8位单片机作为重要控制芯片。8位单片机具备价格比较便宜,并且技术比较成熟,低功耗,易于购买等长处,但是8位机程序执行速度比较慢,内部资源比16位单片机少诸多。考虑到本系统对程序运营速度规定不高以及成本问题,最后选取用8位单片机,由于AT89S51单片机比其她8位单片机价格便宜,并且其内部具备丰富资源,故采用AT89S51单片机作为本系统主控制芯片。 2.2.2 温度采集模块选取方案与论证 方案一:使用热敏电阻作为传感器,用热敏电阻与一种相应阻值电阻相串联分压,运用热敏电阻阻值随温度变化而变化特性,采集这两个电阻变化分压值,并进行A/D转换。此设计方案需用A/D转换电路,增长了线路复杂限度,增长硬件成本并且热敏电阻感温特性曲线并不是严格线性,会产生较大测量误差。因而此方案不可行。 方案二:采用DS18B20。DS18B20数字温度输出通过1-Wire总线,又称为“一线”总线,这种独特方式可以使各种DS18B20以便地组建成传感器网络,为整个测量系统建立和组合提供了更大也许性。它在测温精度、转换时间、测数距离、辨别率等方面比其她温度传感器有了很大进步,给顾客带来了更以便使用和更令人满意效果。DS18B20直接输出数字温度值,不需要校正,因而选取此方案。 2.2.3 无线收发模块选取方案与论证 方案一:采用TX315A-T01和TX315A-R01无线收发模块。应用当前最先进声表面波器件和数据专用ASK超外差式单片接受电路开发生产了TX315系列模块电路,其中具有RF、TF、DATA等高频、中频、数字解决电路。TX315A可应用于无线遥控、数据传送、自动抄表系统、无线键盘操作系统、警戒系统。TX315A由TX315A-T01发射组件和TX315A-R01接受组件两某些构成,因其频率绝对一致,故在使用时可随意增长发射和接受组件,以构成所需功能系统。此系统用此模块较好,但是这个模块价格太昂贵,因此放弃此方案。 方案二:采用一对NRF24L01作为无线收发模块。NRF24L01是一款新型单片射频收发器件,工作于2.4 GHz~2.5 GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强型Shock Burst技术,其中输出功率和通信频道可通过程序进行配备。NRF24L01功耗低,在以-6dBm功率发射时,工作电流也只有9mA;接受时,工作电流只有12.3mA,各种低功率工作模式(掉电模式和空闲模式)使节能设计更以便,并且价格相对其她无线模块较低,易于购买,因而选取此方案。 2.2.4 显示模块选取方案与论证 方案一:采用数码管显示,成本低、亮度高。但本系统所要实现较多内容,硬件电路设计会比较复杂,并且功耗大,因此不适合本设计。 方案二:采用点阵式数码管显示,点阵式数码管是由八行八列发光二极管构成,对于显示文字比较适合,如采用在显示数字显得太挥霍,且价格也相对较高,因此也不用此种作为显示。 方案三:采用LCD1602液晶屏显示,显示内容较多,以便组合,可视面积大,画面效果好,抗干扰能力强,调用以便简朴,并且可以节约软件中断资源。系统中需要显示温度和上限温度等信息,规定显示内容丰富。 比较上述三种方案,方案三电路简朴、显示信息量大、能较好满足题目规定,因而采用方案三 。 2.2.5 报警模块选取方案与论证 方案一:采用555定期器构成蜂鸣器,惯用于定期报警,非常实用,其时间可控,但本设计报警时间是随机,取决于实验现场温度,因而不可行。 方案二:采用9102三极管驱动蜂鸣器,当达到温度上下限值,就会给三极管一种高电平驱动蜂鸣器,实现声音报警,并且可以接个发光二级管,同步点亮二极管,实现发光报警。此方案实行起来以便,电路也简朴,因而选用此方案。 2.3 电路设计最后方案拟定 由以上讨论各种方案最后得出本次设计方案为:采用单片机芯片AT89S51作为主控制芯片,DS18B20数字温度传感,NRF24L01作为无线收发模块,LCD1602作为显示模块,采用蜂鸣器和发光二极管进行声光报警。 3 系统硬件设计与实现 系统硬件电路重要分为:单片机AT89S51主、从系统、接受电路、显示电路、键盘电路、温度采集电路、发射电路。设计总框图如图3-1所示,系统设计总原理图见附录1。 温度采集 AT89S51单片机(副) 无线发射 液晶显示 AT89S51单片机(主) 无线接受 声光报警 独立键盘 图3-1 总设计框图 3.1 系统硬件概述 硬件电路是由单片机芯片AT89S51为控制核心,具备在线编程,丰富中断源、灵活性强、低功耗等功能,能在3V低压工作;温度采集由DS18B20来构成,它具备微型化、低功耗、高性能、搞干扰能力强、易配解决器等长处,特别合用于构成多点温度测控系统,可直接将温度转化成串行数字信号给单片机解决,且在同一总线上可以挂接各种传感器芯片;无线收发模块用NRF24L01,工作于2.4GHz~2.5GHz ISM频段,NRF24L01功耗低,在以-6dBm功率发射时,工作电流也只有9mA;接受时,工作电流只有12.3mA,各种低功率工作模式(掉电模式和空闲模式)使节能设计更以便;显示部份由1602 LCD来完毕;报警电路采用三极管驱动蜂鸣器及发光二极管实现声光报警。 3.2 重要单元电路设计 3.2.1 单片机主控制模块设计 AT89S51单片机为40引脚双列直插芯片,如图3-2所示。有四个I/O口P0,P1,P2,P3,每一条I/O线都能独立地作输出或输入。AT89S51具备如下原则功能:4k字节Flash,256字节RAM,32位I/O 口线,看门狗定期器,2个数据指针,三个16位定期器/计数器,一种6向量2级中断构造,全双工串行口,片内晶振及时钟电路。此外,AT89S51可降至0Hz 静态逻辑操作,支持2种软件可选取节电模式。空闲模式下,CPU停止工作,容许RAM、定期器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一种中断或硬件复位为止。 图3-2 AT89S51管脚图 单片机主控制电路即涉及了单片机时钟电路和复位电路。本设计采用是内部时钟电路。单片机内部有一种用于构成振荡器高增益反相放大器,18引脚XTAL1是放大器输入端,19引脚XTAL2是放大器输出端,这两个引脚之间跨接晶振和微调电容作为反馈元件一起构成一种稳定自激振荡器。9引脚是单片机复位输入端,接上电容,电阻及电阻和按钮构成手动复位电路。如图3-3所示。 图3-3 单片机复位和时钟电路 3.2.2 温度采集电路模块设计 温度采集电路如图3-4所示。采用数字式温度传感器DS18B20,它是DALLAS公司生产单总线式数字温度传感器,它具备微型化、低功耗、高性能、搞干扰能力强、易配解决器等长处,特别合用于构成多点温度测控系统,可直接将温度转化成串行数字信号(提供9位二进制数字)给单片机解决,且在同一总线上可以挂接各种传感器芯片。它具备3引脚TO-92小体积封装形式,温度测量范畴为-55℃~+125℃,可编程为9位~12位A/D转换精度,测温辨别率可达0.0625℃,被测温度用符号扩展16位数字量方式串行输出,其工作电源既可在远端引入,也可采用寄生电源方式产生,各种DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与各种DS18B20通信,占用微解决器端口较少,可节约大量引线和逻辑电路。它具备测量精度高,电路连接简朴特点,此类传感器仅需要一条数据线进行数据传播,使用 P10与DS18B20I/O口连接,VCC接电源,GND接地。 图3-4 温度传感器应用电路 3.2.3 无线收发电路模块设计 NRF24L01是一款新型单片射频收发器件,工作于2.4GHz~2.5GHz ISM频段。内置频率合成器、功率放大器、晶体振荡器、调制器等功能模块,并融合了增强Shock Burs技术,其中输出功率和通信频道可通过程序进行配备。NRF24L01功耗低,在以-6dBm功率发射时,工作电流也只有9mA;接受时,工作电流只有12.3mA,各种低功率工作模式(掉电模式和空闲模式)使节能设计更以便。NRF24L01重要特性有GFSK调制:硬件集成OSI链路层;具备自动应答和自动再发射功能;片内自动生成报头和CRC校验码;数据传播率为l Mb/s或2Mb/s;SPI速率为0 Mb/s~10 Mb/s;125个频道:与其她NRF24系列射频器件相兼容;QFN20引脚4mm×4mm封装;供电电压为1.9V~3.6V。NRF14L01封装及引脚排列如图3-5所示。 图3-5 NRF24L01管脚图 发射数据时,一方面将NRF24L01配备为发射模式:接着把接受节点地址TX_ADDR和有效数据TX_PLD按照时序由SPI口写入NRF24L01缓存区,TX_PLD必要在CSN为低时持续写入,而TX_ADDR在发射时写入一次即可,然后CE置为高电平并保持至少10μs,延迟130μs后发射数据;若自动应答启动,那么NRF24L01在发射数据后及时进入接受模式,接受应答信号(自动应答接受地址应当与接受节点地址TX_ADDR一致)。如果收到应答,则以为本次通信成功,TX_DS置高,同步TX_PLD从TX FIFO中清除;若未收到应答,则自动重新发射该数据(自动重发已启动),若重发次数(ARC)达到上限,MAX_RT置高,TX FIFO中数据保存以便在次重发;MAX_RT或TX_DS置高时,使IRQ变低,产生中断,告知MCU。最后发射成功时,若CE为低则NRF24L01进入空闲模式1;若发送堆栈中有数据且CE为高,则进入下一次发射;若发送堆栈中无数据且CE为高,则进入空闲模式2。 接受数据时,一方面将NRF24L01配备为接受模式,接着延迟130μs进入接受状态等待数据到来。当接受方检测到有效地址和CRC时,就将数据包存储在RX FIFO中,同步中断标志位RX_DR置高,IRQ变低,产生中断,告知MCU去取数据。若此时自动应答启动,接受方则同步进入发射状态回传应答信号。最后接受成功时,若CE变低,则NRF24L01进入空闲模式1。 SPI口为同步串行通信接口,最大传播速率为10Mb/s,传播时先传送低位字节,再传送高位字节。但针对单个字节而言,要先送高位再送低位。与SPI有关指令共有8个,使用时这些控制指令由NRF24L01MOSI输入。相应状态和数据信息是从MISO输出给MCU。 NFR24L01模块采用3.3V电压供电,其应用电路及电源转换电路如图3-6所示。 图3-6 NRF24L01应用电路 3.2.4 显示电路模块设计 如图3-7所示,采用1602 LCD显示。1602字符型LCD普通有14条引脚线或16条引脚线LCD,多余来2条线是背光电源线VCC(15脚)和地线GND(16脚),其控制原理与14脚LCD完全同样,详细各个脚功能如表3-1。 表3-1 LCD引脚功能表 引脚 符号 功能阐明 1 VSS 普通接地 2 VDD 接电源(+5V) 3 V0 LCD对比度调节端,接正电源时对比度最弱,接地时对比度最高 4 RS RS为寄存器选取,高电平时选数据寄存器、低电平时选指令寄存器。 5 R/W R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。 6 E E(或EN)端为使能(enable)端,下降沿使能。 7 DB0 底4位三态、双向数据总线 0位(最低位) 8 DB1 底4位三态、双向数据总线 1位 9 DB2 底4位三态、双向数据总线 2位 10 DB3 底4位三态、双向数据总线 3位 11 DB4 高4位三态、双向数据总线 4位 12 DB5 高4位三态、双向数据总线 5位 13 DB6 高4位三态、双向数据总线 6位 14 DB7 高4位三态、双向数据总线 7位(最高位)(也是busy flag) 由于1602 LCD具备功耗低、寿命长、体积小、显示内容丰富、接口控制以便等长处。因而在各类电子产品中被广泛推广和使用。本系统采用它来作为显示屏件,不但简化了硬件电路,并且极大提高了系统可靠性。如图3-8所示。1602 LCD与单片机AT89S52连接电路很简朴。 图3-7 LCD1602管脚图 图3-8 LCD1602应用电路 3.2.5 报警电路模块设计 蜂鸣器是一种一体化构造电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定期器等电子产品中作发声器件。 蜂鸣器重要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。 压电式蜂鸣器:压电式蜂鸣器重要由多谐振荡器、压电蜂鸣片、阻抗匹配器及共鸣箱、外壳等构成。有压电式蜂鸣器外壳上还装有发光二极管。多谐振荡器由晶体管或集成电路构成。当接通电源后(1.5~15V直流工作电压),多谐振荡器起振,输出1.5~2.5kHZ音频信号,阻抗匹配器推动压电蜂鸣片发声。 电磁式蜂鸣器:电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等构成。接通电源后,振荡器产生音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁互相缠绕。 本设计应用三极管驱动蜂鸣器同步点亮发光二极管实现报警,其应用电路如图3-9所示。 图3-9 报警电路 3.2.6 电路原理及阐明 将以上各个电路模块连接起来,即构成无线远程监控系统,总系统工作原理如下:温度传感器对实验现场温度进行采集,副控芯片AT89S51对采集温度数据进行解决,将有用数据送给发射模块NRF24L01,主系统接受模块NRF24L01接受数据送给主控芯片AT89S51,AT89S51对数据进行分析解决,对现场实际温度进行显示;此外,可以人工通过独立键盘对所测温度进行监控,先设定好规定温度范畴,当采集温度超过此范畴时,蜂鸣器响,同步点亮发光二极管,通过按键选取,可以独立实现声音报警、发光报警及声光同步报警;当检测温度不在设定范畴内时,系统正常运营,时刻显示着现场温度值。 4 系统程序设计 4.1 主程序设计 主程序涉及主系统程序设计,子系统程序设计和报警程序设计。 主系统程序负责键盘设定值检测,上下门限设定值显示,通过无线模块接受子系统发送来数据并显示在LCD上,并且判断接受温度与否超过门限值,如果超过就进行报警操作。主系统流程图如图4-1所示。 键盘设定值检测 设定值显示 实际值显示 接受副系统数据 返回 主程序 温度超过范畴否? 报警 Y N 图4-1 主系统程序流程图 子系统负责对温度数据采集,通过解决后通过无线模块发送出去。子系统程序流程图如图4-2所示。 温度采集 数据解决 实际值发送 主程序 返回 图4-2 子系统程序流程图 报警程序通过对接受到实际值与设定值进行比较,当温度不大于报警下限值时,进行报警下限解决,当温度不不大于报警上限值时,进行报警上限解决。报警程序流程图如图4-3所示。 设定值与实际值比较 温度不大于报警下限? 温度不不大于报警上限? 报警上限解决 N Y Y N 报警下限解决 报警子程序 返回 图4-3 温度报警子程序流程图 主程序一方面对LCD进行初始化,然后进行按键扫描,设定温度上下限值,接着初始化无线接受模块,然后温度数据,并判断与否超过设定范畴,超过即启动报警程序,不超过则继续判断,如此循环。 main() { delay_ms(500);// 上电延时 LCD1602_init();// LCD初始化 wireless_init(); while (1) { Count++;// 超时计数 if (Count >= 140000) w_string(0x00," No Signal!!! ");//显示无信号 k_val = scan_key();//扫描按键 key_action(k_val);//按键操作内容 if (IRQ == 0) //与否接受到数据 { read_chip_state();//读芯片状态 tra[0] = 0x27;tra[1] = 0x70; write_more_byte(tra,2); read_more_bytes(Rev_dat,16);// 读数据 if ((Rev_dat[0]+Rev_dat[1]) == 0xFF) //和校验 { Count = 0;//清零计数器 w_string(0x00,"Real Wen du: C"); //显示当前温度 if (Rev_dat[0] < 0) //负温度显示 { Rev_dat[0] = -Rev_dat[0]; w_string(0x0C,"-"); w_data(0x0D,Rev_dat[0]);} else // 正温度显示 { w_string(0x0C,"+");w_data(0x0D,Rev_dat[0]);} } } } } 4.2 发射系统程序设计 发射程序一方面点亮信号灯并且初始化无线发射模块,接着读取温度数据并校验数据,然后发射温度数据并重置信号灯,数据正常发送,则信号灯稳定闪烁。 main() { int8 dataout[16]; LED = 0;// 上电LED亮 Wireless_init();//初始化无线模块 while (1) { start_temp_sensor();// 初始化18B20 delay_ms(1000); // 延时1秒 dataout[0] = read_temp();//读温度 dataout[1] = 0xFF - dataout[0];//反转数据 作为校验 LED = ~LED;// 重置LED批示灯 Send_16Bytes_Data(dataout);// 发送数据 } } 4.3 传播程序设计 传播程序涉及发送数据和接受数据,即无线收发模块之间进行数据通信,设定好相应通信地址和通信合同,即可实现数据对的传送。 // 发送数据 // 输入值:addr:输入数据地址 void Send_16Bytes_Data(unsigned char *addr) { unsigned char *p = addr,tra1[2],i; CLR_SCN(); Write_one_byte(0xA0); for (i=0;i<16;i++) { Write_one_byte(*p++); } SET_SCN(); SET_CE(); for (i=0;i<60;i++); CLR_CE(); while (READ_IRQ() == 1); tra1[0] = 0x27; tra1[1] = 0x70; Write_more_byte(tra1,2); tra1[0] = 0xE1; Write_more_byte(tra1,1); } /* 接受数据*/ // 写一种字节到芯片 // 输入参数:dat:数据 void write_one_byte(unsigned char dat) { unsigned char i,dd=dat; for (i=0;i<8;i++) { if (dd & 0x80) // 发送数据 { SET_MOSI();} else { CLR_MOSI();} SET_SCK(); // 发时钟 CLR_SCK();dd <<= 1; } } 4.4 温度采集程序设计 温度采集程序重要是对温度传感器DS18B20编程,向1-线总线上写字节,传送字节和读字节,然后将采集数据交给单片机进行解决。 /* 18B20写1个字节函数 向1-WIRE总线上写一种字节*/ void write_byte(uint8 val) { uint8 i; for (i=0;i<8;i++) { DQ = 1;_nop_();DQ = 0; nops();//4us DQ = val & 0x01; //最低位移出 delay(6); //66us val >>= 1; //右移一位 } DQ = 1;delay(1); } /*18B20读1个字节函数 从1-WIRE总线上读取一种字节*/ uint8 read_byte(void) { uint8 i,value=0; for (i=0;i<8;i++) { DQ=1;_nop_(); value >>= 1;DQ = 0; nops(); //4us DQ = 1; nops(); //4us if (DQ) value|=0x80;delay(6); //66us } DQ=1;return(value); } 4.5 显示程序设计 LCD1602显示程序,一方面进行1602初始化,然后就是执行写命令和写数据这两个子函数,实现温度数据实时显示和按键操作动态显示。 /* 初始化1602*/ void LCD1602_init(void) { w_cmd(0x38); // 16*2显示,5*7点阵,8位数据接口 w_cmd(0x0C); // 显示屏开 w_cmd(0x06); // 文字不动,光标自动右移 w_cmd(0x01); // 清屏 } /*等待繁忙标志*/ void wait(void) { P0 = 0xFF; do { RS = 0;RW = 1;EN = 0;EN = 1; }while (BUSY == 1); EN = 0; } /*写数据*/ void w_dat(uint8 dat) { wait(); EN = 0;P0 = dat;RS = 1;RW = 0; EN = 1;EN = 0;} /* 写命令*/ void w_cmd(uint8 cmd) { wait(); EN = 0;P0 = cmd;RS = 0;RW = 0; EN = 1;EN = 0;} /*发送字符串到LCD*/ void w_string(uint8 addr_start,uint8 *p) { w_cmd(addr_start | 0x80); while (*p != '\0') { w_dat(*p++);} } /*发送数字到LCD(00~99)*/ void w_data(uint8 addr_start,uint8 dat) { w_cmd(addr_start | 0x80); w_dat(dat%100/10 + '0');w_dat(dat%10 + '0');} 5 仿真与调试 由于无线模块NRF24L01在模仿仿真中无法实现,因此采用是双机通信原理实现某些仿真。当温度低于最低门限值时,红灯亮,报警器报警,LCD显示当前温度;当温度在设立范畴类时,LCD显示当前温度;当温度超过最高门限时,黄灯亮,报警器报警。仿真原理图如图6-1所示,仿真成果如图6-2、6-3、6-4所示。 图6-1 仿真原理图 图6-2 低于最低门限仿真图 图6-3 正常范畴内仿真图 图6-4 超过最大门限仿真图 6 结论 本设计以单片机AT89S51为开发平台,NRF24L01无线收发模块,DS18B20温度传感器及LCD1602特性及工作原理进行了进一步研究。通过软件硬件相结合而设计了远程温度显示,远程温度报警系统。89S51单片机采用,不但便于数据采集,并且扩展了各种功能,例如显示、外部中断等。NRF24L01无线收发模块集成度高,集合了编码解码,发射接受功能,使用以便,使得系统硬件和软件简朴了许多。“一线”数字温度传感器DS18B20与软件解决相结合,进一步提高了系统测温精度。在电路设计中充分考虑了系统可靠性和安全性。该系统具备操控简朴以便、显示直观、功能多样、精准度高、电路简洁、成本低廉等诸多长处。对于单片机兴趣者来说,也可以在系统基本上进行其他功能开发。 通过,某些模仿仿真调试,各项性能指标基本达到预期规定,也遇到某些问题,给系统上电后,液晶屏初始化失败,经检查发现,设计电路中液晶屏8个数据端口少接了上拉电阻,并且主芯片31()管脚没有接电源,导致无法访问片内存储器,通过修改后,再次上电后,初始化成功。 参照文献 [1]于海生,潘松峰,于培仁.微型计算机控制技术[M].北京:清华大学出版社,. [2]徐炜,姜晖,崔琛.通信电子技术[M].西安:西安电子科技大学出版社,. [3]朱定华.微机原理与接口技术[M].北京:清华大学出版社,. [4]李斯伟,雷新生.数据通信技术[M].北京:人民邮电出版社,. [5]谢自美.电子线路设计实验测试[M].武汉:华中科技大学出版社,. [6]梁廷贵.遥控电路可控硅触发电路语音电路分册[M].北京:科学技术文献出版社,. [7]黄贤武,郑筱霞.传感器原理及其应用[M].成都:电子科技大学出版社,. [8]俞国亮.MCS-51单片机原理与应用[M].北京:清华大学出版社,. [9]夏路易,石宗义.Protell99SE设计教程[M].北京:北京但愿电子出版社,. [10]王用伦.微机控制技术[M].重庆:重庆大学出版社,. [11]李大寨.传感器电子制作DIY[J].北京:科学出版社,. [12]张毅刚.单片机原理及应用[M].北京:高等教诲出版社- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 无线 远程 温度 监控 专业 系统 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文