基于RF2401的家居环境无线监测系统毕业设计论文.doc_第1页
基于RF2401的家居环境无线监测系统毕业设计论文.doc_第2页
基于RF2401的家居环境无线监测系统毕业设计论文.doc_第3页
基于RF2401的家居环境无线监测系统毕业设计论文.doc_第4页
基于RF2401的家居环境无线监测系统毕业设计论文.doc_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

兰州工业学院毕业设计(论文)兰州工业学院毕业设计(论文)题目:基于RF2401的家居环境 无线监测系统院 别 电子信息工程学院 专 业 通 信 技 术 班 级 通信13-2班 姓 名 巩 元 恒 学 号 201310602207 指导教师(职称)邓翔宇(教授) 日 期 2016年3月9日 摘 要温度是一个非常重要的参数。在工业、医疗、军事和生活等许多地方,都需要用到测温装置来检测温度。传统直接布线测量不满足要求,特别是在某些环境恶劣的工业环境和户外环境,通过直接布线测量不现实。因此采用无线传输温度检测尤为必要。 目前有些设计能够实现无线温度采集,但价格过高是其最大的缺点。在实际温度控制过程中既要求系统具有稳定性、实时性又需要降低功耗。因此设计一种低功耗的无线温度检测系统很有意义。本文提出一种采用单片机STC89C52控制DS18B20实现的无线温度测量系统。通过简单的无线通信协议,实现可靠性与功耗平衡,该系统能实现对温度的检测,能够同时进行温度检测,是可以实现远程控制的无线温度检测系统。低功耗、实时性的无线温度检测是该设计的最大特点。无线传输采用nRF2401模块传输。 该系统结构简单,可靠,功耗较低,成本低,是一种无线传感器的解决方案。 关键字:单片机 STC89C52;无线传输 nRF2401;DS18B20AbstractTemperature is a very important parameters. In the industrial, medical and military and life and many other place, it needs to use the temperature measurement device to detect temperature. The traditional direct measurement wiring does not meet the requirements, especially in some environmental bad industrial environment and outdoor environment, through the direct wiring measurement is not practical. So using wireless transmission temperature testing is necessary. At present some design can realize the wireless temperature gathering, but the price is too high, its biggest weakness. In the actual temperature control process requires both system has stability, real-time and the need to reduce power consumption. So the design of a kind of low power consumption wireless temperature detection system is very meaningful. This paper presents a USES the monolithic integrated circuit STC89C52 control DS18B20 of the realization of the wireless temperature measuring system. Through the simple wireless communication protocol, realize the reliability and power balance, the system can realize to the temperature detection, can simultaneously determine the temperature, can be realized the wireless remote control temperature detection system. Low power consumption, real-time wireless temperature detection is the biggest characteristic of the design. Wireless transmission using nRF24L01 module transmission. The system structure is simple, reliable, low power consumption, low cost, it is a kind of wireless sensor solutions. Key Word:STC89C52;wireless transmission nRF2401;DS18B20目 录摘 要IAbstractII目 录III2 系统方案分析与选择论证32.1 系统方案设计32.1.1 主控芯片方案32.1.2无线通信模块方案32.1.3 温度传感方案32.1.4 显示模块方案42.2 系统最终方案43 主要芯片介绍和系统模块硬件设计63.1 STC89C52 性能介绍63.1.1时钟电路63.1.2复位及复位电路63.2 nRF2401无线模块73.2.1 nRF2401芯片概述73.2.2 nRF2401芯片结构83.2.3工作模式83.2.4应用电路123.3时钟芯片DS1302123.3.1 DS1302性能简介123.3.2 DS1302接口电路133.4温度传感器DS18B20143.4.1 DS18B20管脚配置和内部结构143.4.2 DS18B20的工作原理163.4.3 DS18B20的硬件设计173.5显示模块183.5.1 LCD1602性能简介183.5.2接收端显示模块183.6摄像头视频监控系统设计193.6.1硬件设计193.6.2基于V4L2的视频采编193.7 环境参量传感器203.7.1温度传感器203.7.2光照检测电路的设计223.7.3湿度传感器233.7.4其他参量传感器234 软件设计254.1主控程序254.2温度数据采集274.3 LCD驱动及液晶显示275 测试与结果分析295.1硬件测试295.2软件调测295.3测试结论29结 论30致 谢31参 考 文 献32附 录33V1 绪 论随着社会的进步和生产的需要,利用无线通信进行温度数据采集的方式应用已经渗透到生活各个方面。图1.1 短距离无线通信的应用在工业上,由于生产环境恶劣,工作人员不能长时间停留在现场观察设备是否运行正常,就需要采集数据并传输数据到一个环境相对好的操控室内,这样就会产生数据传输问题。由于厂房大、需要传输数据多,使用传统的有线数据传输方式就需要铺设很多很长的通讯线,浪费资源,占用空间,可操作性差,出现错误换线困难。而且,当数据采集点处于运动状态、所处的环境不允许或无法铺设电缆时,数据甚至无法传输,此时便需要利用无线传输的方式进行数据采集。在农业生产上,不论是温室大棚的温度监测,还是粮仓的管理,传统上都是采取分区取样的人工方法,工作量大,可靠性差。而且大棚和粮仓占地面积大,检测目标分散,测点较多,传统的方法已经不能满足当前农业发展的需要。当前的科技水平下,无线通信技术的发展使得温度采集测量精确,简便易行。 在日常生活中,随着人们生活水平的提高,居住条件也逐渐变得智能化。如今很多家庭都会安装室内温度采集控制系统,其原理就是利用无线通信技术采集室内温度数据,并根据室内温度情况进行遥控通风等操作,自动调节室内温度湿度,可以更好地改善人们的居住环境。 以上只是简单列举几个现实的例子,在现实生活中,这种无线温度采集系统已经被成功应用于工农业、环境监测、军事国防、机器人控制等许多重要领域,而且类似于这种温度采集系统的无线通信网络已经被广泛的应用到民用和军事领域。凡是布线繁杂或不允许布线的场合都希望能通过无线方案来解决。为此,需要设计相应的接口系统,控制这些射频芯片工作,完成可靠稳定的无线数据通信,这样的研究也变得更加有意义了。 2 系统方案分析与选择论证2.1 系统方案设计2.1.1 主控芯片方案方案一:采用传统的AT89S52单片机作为主控芯片。此芯片价格便宜、操作简便,低功耗,比较经济实惠。 方案二:微控制器STC89C52是宏晶科技生产的一款单片机。它集Flash程序存储器、通用8位微处理器于一体。它与51系列单片机完全兼容,但它的存储和抗干扰能力更强,处理速度更快,功耗更低。可广泛应用于各种控制领域。STC89C52引脚图如图考虑到此系统需要不用到ADC,从性能和价格上综合考虑我们选择方案二,即用STC89C52作为本系统的主控芯片。2.1.2无线通信模块方案 方案一:采用GSM模块进行通信,GSM模块需要借助移动卫星或者手机卡,虽说能够远距离传输,但是其成本较大、且需要内置SIM卡,通信过程中需要收费,后期成本较高。 方案二:采用TI公司CC2430无线通信模块,此模块采用Zigbee总线模式,传输速率可达250kbps,且内部集成高性能8051内核。但是此模块价格较贵,且Zigbee协议相对较为复杂。 方案三:nRF2401是单片射频收发芯片,工作于2.42.5GHzISM频段,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置。芯片能耗非常低,以-5dBm的功率发射时,工作电流只有10.5mA,接收时工作电流只有18mA,多种低功率工作模式,节能设计更方便。其DuoCeiverTM技术使nRF2401可以使用同一天线,同时接收两个不同频道的数据。nRF2401适用于多种无线通信的场合,如无线数据传输系统、无线鼠标、遥控开锁、遥控玩具等。从性能和价格上综合考虑我们选择方案三,采用nRF2401芯片。2.1.3 温度传感方案 方案一:采用AD590是美国ANALO G DEV ICES 公司的单片集成两端感温电流源。AD590测量热力学温度、摄氏温度、两点温度差、多点最低温度、多点平均温度的具体电路,广泛应用于不同的温度控制场合由于AD590精度高、价格低、不需辅助电源、线性好,常用于测温和热电偶的冷端补偿。但其需要用到差分放大器放大和A/D转换,需要原件多。 方案二:采用美国DALLAS公司生产的 DS18B20可组网数字温度传感器芯片,具有耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。经济,方便。 使用DS18B20线路简单,编程容易,但是比AD590精度低。AD590还需要其它辅助电路,线路复杂,编程难度大,但是温度精确。考虑到电路的设计,成本,还有多点通信,我们选择方案二,即用DS18B20作为本系统的温度传感器。 2.1.4 显示模块方案 方案一:选择主控为ST7920的带字库的LCD12864来显示信息。12864是一款通用的液晶显示屏,能够显示多数常用的汉字及ASCII码,而且能够绘制图片,描点画线,设计成比较理想的结果。 方案二:采用字符液晶LCD1602显示信息,1602是一款比较通用的字符液晶模块,能显示字符和数字等信息,且价格便宜,容易控制。 方案三:采用LED7段数码显示管显示,其成本低,容易显示控制,但不能显示字符。 综合以上方案,我们选择了经济实惠的字符液晶LCD1602来作为接收端的显示。发送端用7段数码管显示。2.2 系统最终方案STC89C52视频采集电源传感器nRF2401DS1302LCD 图2.1 总体原理图图2.2 主要节点图3 主要芯片介绍和系统模块硬件设计3.1 STC89C52 性能介绍STC89S52是一种带8K字节闪烁可编程可擦除只读存储器的低电压,高性能COMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。3.1.1时钟电路STC89C52内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。时钟可以由内部方式产生或外部方式产生。内部方式是指在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。定时元件通常采用石英晶体和电容组成的并联谐振回路。晶体振荡频率可以在1.212MHz之间选择,电容值在530pF之间选择,电容值的大小可对频率起微调的作用。外部方式的时钟电路是指RXD接地,TXD接外部振荡器。对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。3.1.2复位及复位电路(1)复位操作复位是单片机的初始化操作。其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。除PC之外,复位操作还对其他一些寄存器有影响,它们的复位状态如表3.1所示。表3.1 存储器复位状态寄存器复位状态寄存器复位状态PC000HTCON00HACC00HTLO00HPSW00HTHO00HSP07HTL100HDPTR0000HTH100HP0-P3FFHSCON00HIPXX000000BSBUF不定IE0X000000BPCON00x0000bTMOD00H(2)复位信号及其产生RST引脚是复位信号的输入端。复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。若使用颇率为6MHz的晶振,则复位信号持续时间应超过4us才能完成复位操作平持续时间大于2个机器周期。(3)STC89C52具体介绍如下:l 主电源引脚(2根)VCC(Pin40):电源输入,接5V电源GND(Pin20):接地线l 外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端l 控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。l 可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。(4)STC89C52主要性能参数:l 与MCS-51产品指令系统完全兼容;l 8k字节在系统编程Flash闪速存储器;l 10000次擦写周期;l 4.15.5V的工作电压范围;l 全静态工作模式:0Hz80MHz;l 1288字节内部RAM;l 32个可编程I/O口线;l 3个16位定时/计数器;l 6个中断源;l 低功耗空闲和掉电模式;l 有看门狗功能。3.2 nRF2401无线模块 3.2.1 nRF2401芯片概述 nRF2401是单片射频收发芯片,工作于2.42.5GHzISM频段,芯片内置频率合成器、功率放大器、晶体振荡器和调制器等功能模块,输出功率和通信频道可通过程序进行配置。芯片能耗非常低,以-5dBm的功率发射时,工作电流只有10.5mA,接收时工作电流只有18mA,多种低功率工作模式,节能设计更方便。其DuoCeiverTM技术使nRF2401可以使用同一天线,同时接收两个不同频道的数据。nRF2401适用于多种无线通信的场合,如无线数据传输系统、无线鼠标、遥控开锁、遥控玩具等。3.2.2 nRF2401芯片结构(1) 芯片结构 nRF2401内置地址解码器、先入先出堆栈区、解调处理器、时钟处理器、GFSK滤波器、低噪声放大器、频率合成器,功率放大器等功能模块,需要很少的外围元件,因此使用起来非常方便。nRF2401的引脚见表3.2所示。表3.2 nRF2401引脚引脚名称引脚功能描述1CE数字输入使RF2401工作于收或发送状态2R2数字输出频道2接受数据准备好3CLK2数字I/O频接2接收数据时钟输入/输出4DOUT2数字输出频道1接收/发送数据端5CS数字输入电源的正数字输出6DR1数字输出频道1接受数据准备好7CLK1数字I/O频接接收数据时钟输入/输出8DATA数字I/O频道1接收/发送数据端9DVDD电源电源的正数字输出10VSS电源电源地11XC1模拟输出晶振112XC2模拟输入晶振213VDD_PA电源输出给功率放大器提供1.8V的电压14ANT1天线天线接口115ANT2天线接口216VSS_PA电源电源地17VDD电源电源正端18VSS电源电源地19IREF模拟输入模数转换的外部参考电压20VSS电源电源地21VDD电源电源正端22VSS电源电源地23PWR_UP数字输入芯片激活端24VDD电源电源地3.2.3工作模式nRF2401有工作模式有四种:收发模式、配置模式、空闲模式和关机模式。nRF2401的工作模式由PWR_UP 、CE、TX_EN和CS四个个引脚决定,详见表3.3所示。表3.3 nRF2401工作模式工作模式PWR_UPCECS收发模式110配置模式101空闭模式100关机模式0XX(1)收发模式nRF2401的收发模式有ShockBurstTM收发模式和直接收发模式两种,收发模式字决定,具体配置将在器件配置部分详细介绍。1 由器件配置ShockBurstTM收发模式ShockBurstTM收发模式下,使用片内的先入先出堆栈区,数据低速从微控制器送入,但高速(1Mbps)发射,这样可以尽量节能,因此,使用低速的微控制器也能得到很高的射频数据发射速率。与射频协议相关的所有高速信号处理都在片内进行,这种做法有三大好处:尽量节能;低的系统费用(低速微处理器也能进行高速射频发射);数据在空中停留时间短,抗干扰性高。nRF2401的ShockBurstTM技术同时也减小了整个系统的平均工作电流。在ShockBurstTM收发模式下,nRF2401自动处理字头和CRC校验码。在接收数据时,自动把字头和CRC校验码移去。在发送数据时,自动加上字头和CRC校验码,当发送过程完成后,数据准备好引脚通知微处理器数据发射完毕。2 ShockBurstTM发射流程 接口引脚为CE,CLK1,DATA: A.当微控制器有数据要发送时,其把CE置高,使nRF2401工作; B.把接收机的地址和要发送的数据按时序送入nRF2401; C.微控制器把CE置低,激发nRF2401进行ShockBurstTM发射。 nRF2401的ShockBurstTM发射: A.给射频前端供电; B.射频数据打包(加字头、CRC校验码); C.高速发射数据包; D.发射完成,nRF2401进入空闲状态。3 ShockBurstTM接收流程接口引脚CE、DR1、CLK1和DATA(接收通道1) A.配置本机地址和要接收的数据包大小; B.进入接收状态,把CE置高; C.200us后,nRF2401进入监视状态,等待数据包的到来; D.当接收到正确的数据包(正确的地址和CRC校验码),nRF2401自动把字头、地址和CRC校验位移去; E.nRF2401通过把DR1(这个引脚一般引起微控制器中断)置高通知微控制器; F.微控制器把数据从nRF2401移出; G.所有数据移完,nRF2401把DR1置低,此时,如果CE为高,则等待下一个数据包,如果CE为低,开始其它工作流程。4 直接收发模式 在直接收发模式下,nRF2401如传统的射频收发器一样工作。5 直接接收模式接口引脚为CE、CLK1和DATA A.一旦nRF2401被配置为直接接收模式,DATA引脚将根据天线接收到的信号开始高低变化(由于噪声的存在); B.CLK1引脚也开始工作; C.一旦接收到有效的字头,CLK1引脚和DATA引脚将协调工作,把射频数据包以其被发射时的数据从DATA引脚送给微控制器; D.这头必须是8位; E.DR引脚没用上,所有的地址和CRC校验必须在微控制器内部进行。(2)配置模式在配置模式,15字节的配置字被送到nRF2401,这通过CS、CLK1和DATA三个引脚完成,具体的配置方法请参考本文的器件配置部分。(3)空闲模式nRF2401的空闲模式是为了减小平均工作电流而设计,其最大的优点是,实现节能的同时,缩短芯片的起动时间。在空闲模式下,部分片内晶振仍在工作,此时的工作电流跟外部晶振的频率有关,如外部晶振为4MHz时工作电流为12uA,外部晶振为16MHz时工作电流为32uA。在空闲模式下,配置字的内容保持在nRF2401片内。(4)关机模式在关机模式下,为了得到最小的工作电流,一般此时的工作电流小于1uA。关机模式下,配置字的内容也会被保持在nRF2401片内,这是该模式与断电状态最大的区别。(5)器件配置nRF2401的所有配置工作都是通过CS、CLK1和DATA三个引脚完成,把其配置为ShockBurstTM收发模式需要15字节的配置字,而如把其配置为直接收发模式只需要2字节的配置字。由上文对nRF2401工作模式的介绍,我们可以知道,nRF2401一般工作于ShockBurstTM收发模式,这样,系统的程序编制会更加简单,并且稳定性也会更高,因此,下文着重介绍把nRF2401配置为ShockBurstTM收发模式的器件配置方法。ShockBurstTM的配置字使nRF2401能够处理射频协议,在配置完成后,在nRF2401工作的过程中,只需改变其最低一个字节中的内容,以实现接收模式和发送模式之间切换。ShockBurstTM的配置字可以分为以下四个部分: 数据宽度:声明射频数据包中数据占用的位数。这使得nRF2401能够区分接收数据包中的数据和CRC校验码; 地址宽度:声明射频数据包中地址占用的位数。这使得nRF2401能够区分地址和数据; 地址:接收数据的地址,有通道1的地址和通道2的地址; CRC:使nRF2401能够生成CRC校验码和解码。当使用nRF2401片内的CRC技术时,要确保在配置字中CRC校验被使能,并且发送和接收使用相同的协议。nRF2401配置字的各个位的描述如表3.4所示。 表3.4 nRF2401配置字描述为位数名字功能ShOcKbur配置143:12024TEST保留119:1128DATA2_W接受频道2有限数据的长度103;648DATA1_W接受频道1有限数据的长度111:10440ADDR2接受频道2的地址,最高为5字节63:2440ADDR1接受频道1的地址,最高为5字节23:186ADDR_W接受频道地址位数171CRC_L8或16为CRC161CRC_EN使能CRC检验常用器件配置151RX2_EN使能第二频道141CM通信方式设置131RFDR_SB发送数据速率(1Mpbs需要16GHz晶振)12:103XO_F晶振频率9:82RF_PWR发射输出电源7:17RF_CH#频道设置01RXEN接受或发射操作在配置模式下,注意保证PWR_UP引脚为高电平,CE引脚为低电平。配置字从最高位开始,依次送入nRF2401。在CS引脚的下降沿,新送入的配置字开始工作。3.2.4应用电路图3.1 nRF2401的应用电路由图3.1知,其只需要14个外围元件。nRF2401应用电路一般工作于3V,它可用多种低功耗微控制器进行控制。在设计过程中,设计者可使用单鞭天线或环形天线,上图为50欧姆单鞭天线的应用电路。在使用不同的天线时,为了得到尽可能大的收发距离,电感电容的参数应适当调整。3.3时钟芯片DS13023.3.1 DS1302性能简介DS1302是美国DALLAS公司推出的涡流充电时钟芯片。其主要功能特性如下:(1)能准确计算年、月、日、星期、时、分、秒的信息;每月的天数和闰年的天数可自动调整;时钟可设置为24或12小时制;(2)与单片机之间采用单线的同步串行通信;(3)用于高速数据暂存的31字节的8位静态RAM;(4)功耗低,保持数据的时钟信息时功率小于1mW;具有可选的涡流充电能力;(5)读/写时钟或RAM的数据有单字节和多字节(时钟突发)两种传送方式。DS1302时钟芯片内主要包括移位寄存器、控制逻辑电路、振荡器。与单片机系统的数据传送依靠RST,I/O,SCLK三根端线即可完成。其工作过程可概括为:首先系统RST引脚驱动至高电平,然后在SCLK时钟脉冲的作用下,通过I/O引脚向DS1302输入地址/命令字节,随后再在SCLK时钟脉冲的配合下,从I/O引脚写入或读出相应的数据字节。因此,其与单片机之间的数据传送是十分容易实现的。DS1302的引脚排列及内部结构图如图3.2所示。图3.2 DS1302引脚排列DS1302引脚说明见表3.5所示。表3.5 DS1302引脚说明I/O数据输入/输出端口SCLK同步串行时钟输入端口RST复位端,1表示芯片的读/写使能,0表示芯片复位并被禁止读/写VCC1慢速充电引脚VCC2主电源输入,接系统电源 X1,X232.768kHz晶振引脚3.3.2 DS1302接口电路DS1302的接口电路如图3.3所示。其中VCC1为后备电源,VCC2为主电源。VCC1在单电源与电池供电的系统中提供低电源并提供低功率的电池备份。VCC2在双电源系统中提供主电源,在这种运用方式中VCC1连接到备份电源,以便在没有主电源的情况下能保存时间信息以及数据。DS1302由VCC1或VCC2 两者中较大者供电。图3.3 DS1302接口电路3.4温度传感器DS18B20DALLAS最新单线数字温度传感器DS18B20简介新的“一线器件”体积更小、适用电压更宽、更经济。DALLAS半导体公司的数字化温度传感器DS1820是世界上第一片支持“一线总线”接口的温度传感器。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。DS18B20、DS1822“一线总线”数字化温度传感器。同DS1820一样,DS18B20也支持“一线总线”接口,测量温度范围为-55C+125C,在-10+85C范围内,精度为0.5C。DS1822的精度较差为2C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。3.4.1 DS18B20管脚配置和内部结构DS18B20的管脚和封装如图3.4所示。图3.4 DS18B20的管脚和封装引脚定义:DQ为单数据总线,是数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)。内部结构:存储器和控制逻辑64位ROM和1线串行I/O接 口温度传感器暂存寄存器供电方式检测温度上限寄存器 温度下限寄存器CRC码发生器图3.5 DS18B20内部结构图基于nRF24L01模块的无线通信系统设计(1)光刻ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码。64位光刻ROM的排列是:开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。(2)DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达,其中S为符号位。表3.6 DS18B20温度值格式表这是12位转化后得到的12位数据,存储在18B20的两个8比特的RAM中,二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。例如+125C的数字输出为07D0H,+25.0625C的数字输出为0191H,-25.0625C的数字输出为FF6FH,-55C的数字输出为FC90H。3.4.2 DS18B20的工作原理DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而抗干扰力更强。其一个工作周期可分为两个部分,即温度检测和数据处理。在讲解其工作流程之前我们有必要了解18B20的内部存储器资源。DS18B20共有三种形态的存储器资源,它们分别是:(1)ROM只读存储器,用于存放DS18B20ID编码,其前8位是单线系列编码(DS18B20的编码是19H),后面48位是芯片唯一的序列号,最后8位是以上56的位的CRC码(冗余校验)。数据在出产时设置不由用户更改。DS18B20共64位ROM。(2)RAM数据暂存器,用于内部计算和数据存取,数据在掉电后丢失,DS18B20共9个字节RAM,每个字节为8位。第1、2个字节是温度转换后的数据值信息,第3、4个字节是用户EEPROM(常用于温度报警值储存)的镜像。在上电复位时其值将被刷新。第5个字节则是用户第3个EEPROM的镜像。第6、7、8个字节为计数寄存器,是为了让用户得到更高的温度分辨率而设计的,同样也是内部温度转换、计算的暂存单元。第9个字节为前8个字节的CRC码。EEPROM非易失性记忆体,用于存放长期需要保存的数据,上下限温度报警值和校验数据,DS18B20共3位EEPROM,并在RAM都存在镜像,以方便用户操作。控制器对DS18B20操作流程:(1)复位:首先我们必须对DS18B20芯片进行复位,复位就是由控制器(单片机)给DS18B20单总线至少480uS的低电平信号。当18B20接到此复位信号后则会在1560uS后回发一个芯片的存在脉冲。(2)存在脉冲:在复位电平结束之后,控制器应该将数据单总线拉高,以便于在1560uS后接收存在脉冲,存在脉冲为一个60240uS的低电平信号。至此,通信双方已经达成了基本的协议,接下来将会是控制器与18B20间的数据通信。如果复位低电平的时间不足或是单总线的电路断路都不会接到存在脉冲,在设计时要注意意外情况的处理。(3)控制器发送ROM指令:双方打完了招呼之后最要将进行交流了,ROM指令共有5条,每一个工作周期只能发一条,ROM指令分别是读ROM数据、指定匹配芯片、跳跃ROM、芯片搜索、报警芯片搜索。ROM指令为8位长度,功能是对片内的64位光刻ROM进行操作。其主要目的是为了分辨一条总线上挂接的多个器件并作处理。诚然,单总线上可以同时挂接多个器件,并通过每个器件上所独有的ID号来区别,一般只挂接单个18B20芯片时可以跳过ROM指令(注意:此处指的跳过ROM指令并非不发送ROM指令,而是用特有的一条“跳过指令”)。(4)控制器发送存储器操作指令:在ROM指令发送给18B20之后,紧接着(不间断)就是发送存储器操作指令了。操作指令同样为8位,共6条,存储器操作指令分别是写RAM数据、读RAM数据、将RAM数据复制到EEPROM、温度转换、将EEPROM中的报警值复制到RAM、工作方式切换。存储器操作指令的功能是命令18B20做什么样的工作,是芯片控制的关键。(5)执行或数据读写:一个存储器操作指令结束后则将进行指令执行或数据的读写,这个操作要视存储器操作指令而定。如执行温度转换指令则控制器(单片机)必须等待18B20执行其指令,一般转换时间为500uS。如执行数据读写指令则需要严格遵循18B20的读写时序来操作。数据的读写方法将有下文有详细介绍。当主机收到DSl8B20的响应信号后,便可以发出ROM操作命令之一,这些命令如下:指令代码:SkipROM(跳跃ROM指令)CCH这条指令使芯片不对ROM编码做出反应,在单总线的情况之下,为了节省时间则可以选用此指令。如果在多芯片挂接时使用此指令将会出现数据冲突,导致错误出现。ReadScratchpad(从RAM中读数据)BEH此指令将从RAM中读数据,读地址从地址0开始,一直可以读到地址9,完成整个RAM数据的读出。芯片允许在读过程中用复位信号中止读取,即可以不读后面不需要的字节以减少读取时间。ConvertT(温度转换)44H收到此指令后芯片将进行一次温度转换,将转换的温度值放入RAM的第1、2地址。此后由于芯片忙于温度转换处理,当控制器发一个读时间隙时,总线上输出“0”,当储存工作完成时,总线将输出“1”。在寄生工作方式时必须在发出此指令后立刻超用强上拉并至少保持500MS,来维持芯片工作。与DS18B20的所有通讯都是由一个单片机的复位脉冲和一个DS18B20的应答脉冲开始的。单片机先发一个复位脉冲,保持低电平时间最少480s,最多不能超过960s。然后,单片机释放总线,等待DS18B20的应答脉冲。DS18B20在接受到复位脉冲后等待1560s才发出应答脉冲。应答脉冲能保持60240s。单片机从发送完复位脉冲到再次控制总线至少要等待480s。读时隙需1560s,且在2次独立的读时隙之间至少需要1s的恢复时间。读时隙起始于单片机拉低总线至少1s。DSl8820在读时隙开始15s后开始采样总线电平。写时隙需要1575s,且在2次独立的写时隙之间至少需要1s的恢复时间。写时隙起始于单片机拉低总线。3.4.3 DS18B20的硬件设计DS18B20在本系统中与发送端单片机的P3.3连接。如图3.6所示。图3.6 DS18B20硬件连接图3.5显示模块3.5.1 LCD1602性能简介1602液晶也叫1602字符型液晶,是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个57或者511等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔起到了字符间距和行间距的作用。也因如此它不能显示图形。LCD1602共有16个引脚,采用并行方式进行数据传输(支持4位和8位两种模式)。LCD1602的引脚示意图如图3.7所示。其主要引脚功能见表3.7所示。图3.7 LCD1602引脚表3.7 LCD1602的引脚及其功能说明第3脚V0为液晶显示器对比度调整端。接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”)。第4脚RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。第5脚RW为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。第6脚E端为使能(enable)端,高电平(1)时读取信息,负跳变时执行指令。第714脚DB0DB7为8位双向数据端。3.5.2接收端显示模块本设计在接收端部分采用LCD1602液晶显示模块来显示温度,,P0由上拉电阻提高驱动能力,作为数据输出并作为LCD的驱动,P2口的P2.7-P2.6分别作为液晶显示模块的使能信号E,数据/命令选择RS,R/W端则配置成写。3.6摄像头视频监控系统设计3.6.1硬件设计将摄像头模块安装在居室门口,采用UP-CUP2410实验箱连接摄像头,通过ARM处理器处理摄像头采集的视频数据并显示在实验箱触摸屏上。硬件平台是整个系统的灵魂,在功能的实现上发挥着至关重要的作用。本文使用的 S3C2440a处理器采用ARM 920t的内核, 最高主频可达400 MHz,是一个16/32位的RISC处理器。S3C2440a 实现了MMU,AMBABUS和Harvard 调整缓冲体系结构。具有独立的16kB指令Cache和16kB数据Cache。每个都是具有8字长的行组成。其低功耗,精简而且全静态设计特别适合对于成本和功率敏感的领域。 本硬件平台体系有256 MB的NAND FLASH ,64 MB的SDRAM,2 MB的NORFLASH , 一个USB接口,一个DM9000e网卡接口,由其构成的监控系统如图3.8所示。图3.8 监控系统硬件结构框图3.6.2基于V4L2的视频采编V4L2是Video For Linux第二版本的简称,它是Linux下进行视频采集的一套规范,为用户统一的接口函数,对满足UVC(USB video class)规范的摄像头有完美支持,同时也支持TV 卡等多种视频设。对图像的采集有两种方法:一是用mmap内存映射法,第2种是用 read、 write函数来实现读写操作。本作品采用第种方法, 因为mmap( )可以将一个普通文件映射到内存中,这样用内存读写取代I/O读写,能获得较高的性能。基于 V4L2 视频采集流程如图3.9所示。开始打开视频设备设备文件读取设备信息处理采集的视频开始视频采集并隔环采集申请缓存区并进行内存映射更改设备配置 结束N关闭Y图3.9 视频采集流程图3.7 环境参量传感器3.7.1温度传感器本系统选用的温度传感器是选用美国 Dalls 公司生产数字温度传感器 DS18B20,其是一种高度集成的传感器芯片,内置控制器、RAM 存储器、ROM 存储器。DALLAS公司拥有特有的单总线技术,即是与微控制器的接口只占用一个 I/O 端口,不需要任何外部元件,在单总线可以同时挂接 248 片 DS18B20 温度芯片。DS18B20具有如下的特性:单线接口、具有体积小、适用电压宽、经济灵活、无需要外部元件、报警搜索命令可识别哪片 DS18B20 超温度限值、测量精度可编程、具有电源反接保护电路。DS18B20不需 AD转换电路,可直接将温度值转换成数字量。该器件只有 3 个引脚,不需要外部元件,一条数据线进行通信,即可实现微处理器与 DS18B20 的双向通讯,大大提高了系统的抗干扰性,适合于恶劣环境的现场温度测量,温度范围为-55+125C,在-10+85C 范围内,精度为 0.5C。DS18B20电路接线图如图3.10所示。图3.10 温度传感器电路接线图典型的单总线命令

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论