ImageVerifierCode 换一换
格式:DOCX , 页数:83 ,大小:3.07MB ,
资源ID:9244652      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/9244652.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于DHT11温湿度传感器和nrf24l01模块的多点数据采集.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于DHT11温湿度传感器和nrf24l01模块的多点数据采集.docx

1、基于DHT11温湿度传感器和nrf24l01模块的多点数据采集基于DHT11传感器和Nrf24L01模块的多点温湿度采集系统一、 设计背景农业大棚种植具有大范围,温湿度要求高的特点。温度,湿度严重影响农作物的生长与产量,所以,对其的测量出其重要。基于这样的考虑,设计了该套多点温湿度采集无线传输系统。二、 系统构成该系统由89C52RC单片机、DHT11温湿度传感器、Nrf24L01无线传输模块构成。具有多点温湿度采集、汇总的特点(本实验采用两个点采集汇总一点完成)1、 单一采集点DHT11温湿度传感器2、 接受点Nrf24L01无线传输模块三、 硬件设计1、 DHT11传感器简介DHT11产品

2、概述DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式储存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,信号传输距离可达20米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳

3、选则。产品为 4 针单排引脚封装。连接方便,特殊封装形式可根据用户需求而提供。(1)传感器性能说明参数条件MinTypMax单位湿度分辨率111%RH8Bit重复性1%RH精度254%RH0505%RH互换性可完全互换量程范围03090%RH252090%RH502080%RH响应时间1/e(63%)25,1m/s 空气61015S迟滞1%RH长期稳定性典型值1%RH/yr温度分辨率111888Bit重复性1精度12量程范围050响应时间1/e(63%)630S(2)接口说明 建议连接线长度短于20米时用5K上拉电阻,大于20米时根据实际情况使用合适的上拉电阻(3)电源引脚DHT11的供电电压

4、为 35.5V。传感器上电后,要等待 1s 以越过不稳定状态在此期间无需发送任何指令。电源引脚(VDD,GND)之间可增加一个100nF 的电容,用以去耦滤波。(4)串行接口 (单线双向)DATA 用于微处理器与 DHT11之间的通讯和同步,采用单总线数据格式,一次通讯时间4ms左右,数据分小数部分和整数部分,具体格式在下面说明,当前小数部分用于以后扩展,现读出为零.操作流程如下:一次完整的数据传输为40bit,高位先出。数据格式:8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据 +8bit校验和数据传送正确时校验和数据等于“8bit湿度整数数据+8bit湿

5、度小数数据+8bi温度整数数据+8bit温度小数数据”所得结果的末8位。用户MCU发送一次开始信号后,DHT11从低功耗模式转换到高速模式,等待主机开始信号结束后,DHT11发送响应信号,送出40bit的数据,并触发一次信号采集,用户可选择读取部分数据.从模式下,DHT11接收到开始信号触发一次温湿度采集,如果没有接收到主机发送开始信号,DHT11不会主动进行温湿度采集.采集数据后转换到低速模式。1.通讯过程如图1所示图1总线空闲状态为高电平,主机把总线拉低等待DHT11响应,主机把总线拉低必须大于18毫秒,保证DHT11能检测到起始信号。DHT11接收到主机的开始信号后,等待主机开始信号结束

6、,然后发送80us低电平响应信号.主机发送开始信号结束后,延时等待20-40us后, 读取DHT11的响应信号,主机发送开始信号后,可以切换到输入模式,或者输出高电平均可, 总线由上拉电阻拉高。 图2总线为低电平,说明DHT11发送响应信号,DHT11发送响应信号后,再把总线拉高80us,准备发送数据,每一bit数据都以50us低电平时隙开始,高电平的长短定了数据位是0还是1.格式见下面图示.如果读取响应信号为高电平,则DHT11没有响应,请检查线路是否连接正常.当最后一bit数据传送完毕后,DHT11拉低总线50us,随后总线由上拉电阻拉高进入空闲状态。 数字0信号表示方法如图4所示 图4数

7、字1信号表示方法.如图5所示 图5(5)测量分辨率测量分辨率分别为 8bit(温度)、8bit(湿度)。(6)电气特性VDD=5V,T = 25,除非特殊标注参数条件mintypmax单位供电 DC355.5V供电电流测量0.52.5mA平均0.21mA待机100150uA采样周期秒1次注:采样周期间隔不得低于1秒钟。(7)应用信息(7.1)工作与贮存条件超出建议的工作范围可能导致高达3%RH的临时性漂移信号。返回正常工作条后,传感器会缓慢地向校准状态恢复。要加速恢复进程/可参阅7.3小节的“恢复处理”。在非正常工作条件下长时间使用会加速产品的老化过程。(7.2)暴露在化学物质中电阻式湿度传感

8、器的感应层会受到化学蒸汽的干扰,化学物质在感应层中的扩散可能导致测量值漂移和灵敏度下降。在一个纯净的环境中,污染物质会缓慢地释放出去。下文所述的恢复处理将加速实现这一过程。高浓度的化学污染会导致传感器感应层的彻底损坏。(7.3)恢复处理置于极限工作条件下或化学蒸汽中的传感器,通过如下处理程序,可使其恢复到校准时的状态。在50-60和70%RH的湿度条件下保持 5小时以上。(7.4)温度影响气体的相对湿度,在很大程度上依赖于温度。因此在测量湿度时,应尽可能保证湿度传感器在同一温度下工作。如果与释放热量的电子元件共用一个印刷线路板,在安装时应尽可能将DHT11远离电子元件,并安装在热源下方,同时保

9、持外壳的良好通风。为降低热传导,DHT11与印刷电路板其它部分的铜镀层应尽可能最小,并在两者之间留出一道缝隙。(7.5)光线长时间暴露在太阳光下或强烈的紫外线辐射中,会使性能降低。(7.6)配线注意事项DATA信号线材质量会影响通讯距离和通讯质量,推荐使用高质量屏蔽线。(8)封装信息(9)DHT11引脚说明 Pin名称注释1VDD供电 35.5VDC2DATA串行数据,单总线3NC空脚,请悬空4GND接地,电源负极(10) 焊接信息手动焊接,在最高260的温度条件下接触时间须少于10秒。(11)注意事项(1)避免结露情况下使用。(2)长期保存条件:温度1040,湿度60以下。2、 nRF24L

10、01模块简介(1)nRF24L01芯片简介功能描述:真正的GFSK 单片式收发芯片内置硬件链路层增强型ShockBurstTM 功能自动应答及自动重发功能地址及CRC 检验功能无线速率: 1 或2MbpsSPI 接口速率:08Mbps125 个可选工作频道很短的频道切换时间,可用于跳频与nRF 24XX 系列完全兼容I/O 可接受5V 电平的输入20 脚QFN 44mm 封装极低成本晶振60ppm使用低成本电感和双面PCB 板 低工作电压:1.93.6V概述:nRF24L01 是一款工作在2.42.5GHz 世界通用ISM 频段的单片无线收发器芯片。无线收发器包括:频率发生器、增强型Schoc

11、kBurstTM 模式控制器、功率放大器、晶体振荡器、调制器、解调器。输出功率、频道选择和协议的设置可以通过SPI 接口进行设置。极低的电流消耗:当工作在发射模式下发射功率为-6dBm 时电流消耗为9mA,接收模式时为12.3mA。掉电模式和待机模式下电流消耗更低。结构框图:引脚及其功能:电气特性:条件:VDD=+3V,VSS=0V,TA=40到+85极限范围:VDD.+3.6VVSS0V输入电压VI-0.3V5.25V输出电压VO. VSSVDD总功耗PD(TA=85) 60mW温度工作温度-40+85存储器温度-40+125注意:强行超过一项或多项极限值使用将导致器件永久性损坏。术语表:功

12、能描述:工作模式 nRF24L01可以设置为以下几种主要模式nRF24L01在不同模式下的引脚功能待机模式:待机模式I 在保证快速启动的同时减少系统平均消耗电流。在待机模式I 下,晶振正常工作。在待机模式II 下部分时钟缓冲器处在工作模式。当发送端TX FIFO 寄存器为空并且CE 为高电平时进入待机模式II。在待机模式期间,寄存器配置字内容保持不变。掉电模式:在掉电模式下,nRF24L01 各功能关闭,保持电流消耗最小。进入掉电模式后,nRF24L01 停止工作,但寄存器内容保持不变。启动时间见表格13。掉电模式由寄存器中PWR_UP 位来控制数据包处理方式:nRF24L01 有如下几种数据

13、包处理方式: ShockBurstTM(与nRF2401,nRF24E1,nRF2402,nRF24E2 数据传输率为1Mbps 时相同) 增强型ShockBurstTM 模式ShockBurstTM 模式:ShockBurst 模式下nRF24L01 可以与成本较低的低速MCU 相连。高速信号处理是由芯片内部的射频协议处理的,nRF24L01 提供SPI 接口,数据率取决于单片机本身接口速度。ShockBurst 模式通过允许与单片机低速通信而无线部分高速通信,减小了通信的平均消耗电流。在ShockBurstTM 接收模式下,当接收到有效的地址和数据时IRQ 通知MCU,随后MCU 可将接收

14、到的数据从RX FIFO 寄存器中读出。在ShockBurstTM 发送模式下,nRF24L01 自动生成前导码及CRC 校验,参见表格12。数据发送完毕后IRQ 通知MCU。减少了MCU 的查询时间,也就意味着减少了MCU 的工作量同时减少了软件的开发时间。nRF24L01 内部有三个不同的RX FIFO 寄存器(6 个通道共享此寄存器)和三个不同的TX FIFO 寄存器。在掉电模式下、待机模式下和数据传输的过程中MCU 可以随时访问FIFO 寄存器。这就允许SPI接口可以以低速进行数据传送,并且可以应用于MCU 硬件上没有SPI 接口的情况下。增强型的ShockBurstTM 模式:增强型

15、ShockBurstTM 模式可以使得双向链接协议执行起来更为容易、有效。典型的双向链接为:发送方要求终端设备在接收到数据后有应答信号,以便于发送方检测有无数据丢失。一旦数据丢失,则通过重新发送功能将丢失的数据恢复。增强型的ShockBurstTM 模式可以同时控制应答及重发功能而无需增加MCU工作量。nRF24L01 在接收模式下可以接收6 路不同通道的数据,见图4。每一个数据通道使用不同的地址,但是共用相同的频道。也就是说6 个不同的nRF24L01 设置为发送模式后可以与同一个设置为接收模式的nRF24L01 进行通讯,而设置为接收模式的nRF24L01 可以对这6 个发射端进行识别。数

16、据通道0 是唯一的一个可以配置为40 位自身地址的数据通道。15 数据通道都为8 位自身地址和32 位公用地址。所有的数据通道都可以设置为增强型ShockBurst 模式。nRF24L01 在确认收到数据后记录地址,并以此地址为目标地址发送应答信号。在发送端,数据通道0被用做接收应答信号,因此,数据通道0 的接收地址要与发送端地址相等以确保接收到正确的应答信号。见图5 选择地址举例。nRF24L01 配置为增强型的ShockBurstTM 发送模式下时,只要MCU 有数据要发送,nRF24L01 就会启动ShockBurstTM 模式来发送数据。在发送完数据后nRF24L01 转到接收模式并等

17、待终端的应答信号。如果没有收到应答信号, nRF24L01 将重发相同的数据包, 直到收到应答信号或重发次数超过SETUP_RETR_ARC 寄存器中设置的值为止,如果重发次数超过了设定值,则产生MAX_RT 中断。只要收到确认信号,nRF24L01 就认为最后一包数据已经发送成功(接收方已经收到数据),把TX FIFO中的数据清除掉并产生TX_DS 中断(IRQ 引脚置高)。在增强型ShockBurstTM 模式下,nRF24L01 有如下的特征:当工作在应答模式时,快速的空中传输及启动时间,极大的降低了电流消耗。低成本。nRF24L01 集成了所有高速链路层操作,比如:重发丢失数据包和产生

18、应答信号。无需单片机硬件上一定有SPI 口与其相连。SPI 接口可以利用单片机通用I/O 口进行模拟由于空中传输时间很短,极大的降低了无线传输中的碰撞现象由于链路层完全集成在芯片上,非常便于软硬件的开发。增强型ShockBurstTM 发送模式:1、 配置寄存器位PRIM_RX 为低2、 当MCU 有数据要发送时,接收节点地址(TX_ADDR)和有效数据(TX_PLD)通过SPI 接口写入nRF24L01。发送数据的长度以字节计数从MCU 写入TX FIFO。当CSN 为低时数据被不断的写入。发送端发送完数据后,将通道0 设置为接收模式来接收应答信号,其接收地址(RX_ADDR_P0)与接收端

19、地址(TX_ADDR)相同。例:在图5 中数据通道5 的发送端(TX5)及接收端(RX)地址设置如下:TX5:TX_ADDR=0xB3B4B5B605TX5:RX_ADDR_P0=0xB3B4B5B605RX:RX_ADDR_P5=0xB3B4B5B6053、 设置CE 为高,启动发射。CE 高电平持续时间最小为10 us。4、 nRF24L01 ShockBurstTM 模式:无线系统上电启动内部16MHz 时钟无线发送数据打包(见数据包描述)高速发送数据(由MCU 设定为1Mbps 或2Mbps)5、 如果启动了自动应答模式(自动重发计数器不等于0,ENAA_P0=1),无线芯片立即进入接

20、收模式。如果在有效应答时间范围内收到应答信号,则认为数据成功发送到了接收端,此时状态寄存器的TX_DS 位置高并把数据从TX FIFO 中清除掉。如果在设定时间范围内没有接收到应答信号,则重新发送数据。如果自动重发计数器(ARC_CNT)溢出(超过了编程设定的值),则状态寄存器的MAX_RT 位置高。不清除TX FIFO 中的数据。当MAX_RT 或TX_DS 为高电平时IRQ 引脚产生中断。IRQ 中断通过写状态寄存器来复位(见中断章节)。如果重发次数在达到设定的最大重发次数时还没有收到应答信号的话,在MAX_RX 中断清除之前不会重发数据包。数据包丢失计数器(PLOS_CNT)在每次产生M

21、AX_RT 中断后加一。也就是说:重发计数器ARC_CNT 计算重发数据包次数,PLOS_CNT 计算在达到最大允许重发次数时仍没有发送成功的数据包个数。6、 如果CE 置低,则系统进入待机模式I。如果不设置CE 为低,则系统会发送TX FIFO 寄存器中下一包数据。如果TX FIFO 寄存器为空并且CE 为高则系统进入待机模式II.发送端发送完数据后,将通道0 设置为接收模式来接收应答信号,其接收地址(RX_ADDR_P0)与接收端地址(TX_ADDR)相同。例:在图5 中数据通道5 的发送端(TX5)及接收端(RX)地址设置如下:TX5:TX_ADDR=0xB3B4B5B605TX5:RX

22、_ADDR_P0=0xB3B4B5B605RX:RX_ADDR_P5=0xB3B4B5B605增强型ShockBurstTM接受模式:1、ShockBurstTM接受模式是通过设置寄存器中PRIM_RX 位为高来选择的。准备接收数据的通道必须被使能(EN_RXADDR 寄存器),所有工作在增强型ShockBurstTM 模式下的数据通道的自动应答功能是由(EN_AA 寄存器)来使能的,有效数据宽度是由RX_PW_Px 寄存器来设置的。地址的建立过程见增强型ShockBurstTM 发送章节。2、 接收模式由设置CE 为高来启动。3、 130us 后nRF24L01 开始检测空中信息。4、 接收

23、到有效的数据包后(地址匹配、CRC 检验正确),数据存储在RX_FIFO 中,同时RX_DR 位置高,并产生中断。状态寄存器中RX_P_NO 位显示数据是由哪个通道接收到的。5、 如果使能自动确认信号,则发送确认信号。6、 MCU 设置CE 脚为低,进入待机模式I(低功耗模式)。7、 MCU 将数据以合适的速率通过SPI 口将数据读出。8、 芯片准备好进入发送模式、接收模式或掉电模式两种数据双方向的通讯方式如果想要数据在双方向上通讯,PRIM_RX 寄存器必须紧随芯片工作模式的变化而变化。处理器必须保证PTX 和PRX 端的同步性。在RX_FIFO 和TX_FIFO 寄存器中可能同时存有数据。

24、自动应答(RX):自动应答功能减少了外部MCU 的工作量,并且在鼠标/键盘等应用中也可以不要求硬件一定有SPI 接口,因此降低成本减少电流消耗。自动重应答功能可以通过SPI 口对不同的数据通道分别进行配置。在自动应答模式使能的情况下,收到有效的数据包后,系统将进入发送模式并发送确认信号。发送完确认信号后,系统进入正常工作模式(工作模式由PRIM_RX 位和CE 引脚决定)。自动重发功能(ART)(TX):自动重发功能是针对自动应答系统的发送方。SETUP_RETR 寄存器设置:启动重发数据的时间长度。在每次发送结束后系统都会进入接收模式并在设定的时间范围内等待应答信号。接收到应答信号后,系统转

25、入正常发送模式。如果TX FIFO 中没有待发送的数据且CE 脚电平为低,则系统将进入待机模式I。如果没有收到确认信号,则系统返回到发送模式并重发数据直到收到确认信号或重发次数超过设定值(达到最大的重发次数)。有新的数据发送或PRIM_RX 寄存器配置改变时丢包计数器复位。数据包识别和CRC 校验应用于增强型ShockBurstTM 模式下:每一包数据都包括两位的PID(数据包识别)来识别接收的数据是新数据包还是重发的数据包。PID识别可以防止接收端同一数据包多次送入MCU。在发送方每从MCU 取得一包新数据后PID 值加一。PID和CRC 校验应用在接收方识别接收的数据是重发的数据包还是新数

26、据包。如果在链接中有一些数据丢失了,则PID 值与上一包数据的PID 值相同。如果一包数据拥有与上一包数据相同的PID 值,nRF24L01 将对两包数据的CRC 值进行比较。如果CRC 值也相同的话就认为后面一包是前一包的重发数据包而被舍弃。1:接收方:接收方对新接收数据包的PID 值与上一包进行比较。如果PID 值不同,则认为接收的数据包是新数据包。如果PID 值与上一包相同,则新接收的数据包有可能与前一包相同。接收方必须确认CRC值是否相等,如果CRC 值与前一包数据的CRC 值相等,则认为是同一包数据并将其舍弃。2:发送方:每发送一包新的数据则发送方的PID 值加一。和CRC 校验应用

27、在接收方识别接收的数据是重发的数据包还是新数据包。如果在链接中有一些数据丢失了,则PID 值与上一包数据的PID 值相同。如果一包数据拥有与上一包数据相同的PID 值,nRF24L01 将对两包数据的CRC 值进行比较。如果CRC 值也相同的话就认为后面一包是前一包的重发数据包而被舍弃。CRC 校验的长度是通过SPI 接口进行配置的。一定要注意CRC 计算范围包括整个数据包:地址、PID和有效数据等。若CRC 校验错误则不会接收数据包,这一点是接收数据包的附加要求,在上图没有说明。载波检测CD:当接收端检测到射频范围内的信号时将CD 置高,否则CD 为低。内部的CD 信号在写入寄存器之前是经过

28、滤波的,内部CD 高电平状态至少保持128us 以上。在增强型ShockBurstTM模式中只有当发送模块没有成功发送数据时,推荐使用CD检测功能。如果发送端PLOS_CNT显示数据包丢失率太高时,可将其设置位接收模式检测CD值,如果CD为高(说明通道出现了拥挤现象),需要更改通信频道;如果CD为低电平状态(距离超出通信范围),可保持原有通信频道,但需作其它调整。数据通道:nRF24L01 配置为接收模式时可以接收6 路不同地址相同频率的数据。每个数据通道拥有自己的地址并且可以通过寄存器来进行分别配置。数据通道是通过寄存器EN_RXADDR 来设置的,默认状态下只有数据通道0 和数据通道1 是

29、开启状态的。每一个数据通道的地址是通过寄存器RX_ADDR_Px 来配置的。通常情况下不允许不同的数据通道设置完全相同的地址。数据通道0 有40 位可配置地址。数据通道15 的地址为:32 位共用地址+各自的地址(最低字节)。图7 所示的是数据通道15 的地址设置方法举例。所有数据通道可以设置为多达40 位,但是15 数据通道的最低位必须不同。当从一个数据通道纵接收到数据,并且此数据通道设置为应答方式的话,则nRF24L01 在收到数据后产生应答信号,此应答信号的目标地址为接收通道地址。寄存器配置有些是针对所有数据通道的,有些则是针对个别的。如下设置举例是针对所有数据通道的: CRC 使能/禁止 CRC 计算 接收地址宽度 频道设置 无线数据通信速率 LNA 增益 射频输出功率寄存器配置:nRF24L01 所有配置都在配置寄存器中,所有寄存器都是通过SPI 口进行配置的。SPI 接口:SPI 接口是标准的SPI 接口,其最大的数据传输率为10Mbps。大多数寄存器是可读的。SPI 指令设置:SPI 接口可能用到的指令在下面有所说明。CSN 为低后SPI 接口等待执行指令。每一条指令的执行都必须通过一次CSN 由高到低的变化。SPI 指令格式:参看图8 及图9R_REGISTER 和W_REGISTER 寄存器可能操作

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1