基于单片机的多点温湿度采集与无线传输系统毕业设计 联系客服

发布时间 : 星期二 文章基于单片机的多点温湿度采集与无线传输系统毕业设计更新完毕开始阅读bf6d8f10e3bd960590c69ec3d5bbfd0a7956d5ee

4 软件设计

4.1 系统总体软件设计

本系统由两个发射机A1、A2与一个接收机B组成,可以设计出发射机的总体程序流程图和接收机的总体程序流程图。发射机程序主要是温湿度采集处理程序,NRF24L01发送程序。接收机主要是数据接收程序,液晶显示程序。

4.1.1 发射机的总体软件设计

发送部分的总体设计思路为:初始化温度传感器DHT11;传感器测得温湿度;把温湿度值写入待发射数据;初始化NRF24L01无线模块;将温湿度发送给接收机,其流程图如图4.1所示

图4.1 发射机程序流程图

4.1.2 接收机的总体软件设计

接收部分的总体设计思路是:初始化nRF24L01无线模块和LCD1602显示模块;接收温湿度数据;在LCD1602上分组显示,其程序流程图如图4.2所示。

图4.2 接收机程序流程图

4.2 温湿度采集模块软件设计

发射机利用DHT11进行温湿度采集,DATA引脚连接于STC89C52RC的P17口以

进行数据传输。NRF24L01通过DATA总线发送出的温湿度数据分小数部分和整数部分,共40bit。数据格式为:8bit湿度整数数据+8bit湿度小数数据+8bi温度整数数据+8bit温度小数数据+8bit校验和[13-14]。

本系统DHT11的工作流程如下:开机后,DHT11处于低功耗模式,当它检测到STC89C52RC发送出的开始信号后,其转换到高速模式,开始进行温湿度采集,并以以上所说的数据格式发送至STC89C52RC,然后进入低速模式。单片机可以选择读取温湿度数据。

DATA总线空闲状态为高电平,DHT11接收到的开始信号必须是大于18ms的低电平,否则,DHT11便无法视其为开始信号。开始信号结束后,DHT11会发送80us的低电平响应信号。STC89C52RC发送开始信号后,需要等待20-40us,然后读取DHT11回馈的低电平响应信号。若读取总线为低电平,则说明DHT11收到了开始信号。DHT11发送响应信号后,再把总线拉高80us,准备发送数据,每一bit数据都以50us低电平时隙开始,高电平的长短决定了数据位是0还是1。当最后一bit数据传送完毕后,DHT11拉低总线50us,随后总线再次进入空闲状态。

根据DHT11与单片机的数据通信时序,可以设计出温湿度采集处理的程序流程图,如图4.3所示。

图4.3 温湿度采集程序流程图

4.3 无线传输模块软件设计

发射机含有数据发射模块,接收机含有数据接收模块,两种模块都采用NRF24L01。所以在进行无线数据通信时,需要把发射机的NRF24L01配置为发射模式,把接收机的NRF24L01配置为接收模式。

4.3.1 数据发送模块软件设计

发射机的STC89C52RC获得温湿度数据后,需要通过NRF24L01进行数据发送。NRF24L01数据的发送过程为

1. 当STC89C52RC有数据要发送时,通过SPI接口,按时序把接收机的地址和要发送的数据送传给NRF24L01。SPI接口的速率可以通过软件配置。

2.微控制器通过置高CE,激发NRF24L01的ShockBurstTM的发送模式。

3.NRF24L01的ShockBurstTM发送数据。自动开启射频寄存器,打包数据(加字头和CRC校验码),发送数据包[15]。

4.当AUTO_RETRAN被置高,NRF24L01不断重发,直到CE被置低。 5.当CE被置低,NRF24L01发送过程完成,自动进入空闲模式。

6.在ShockBurstTM工作模式下,一旦开始发送数据,发送过程都会被处理完。只有发送完前一个数据包的数据,NRF24L01才能接受下一个发送数据包。

由此,发送模块的程序设计思路如下

1.STC89C52RC控制CE引脚为低电平,从而使NRF24L01置于待机模式,对其进行寄存器配置。

2.当STC89C52要发送温湿度数据时,其按时序通过SPI总线把接收节点地址(TX_ADDR)和有效数据(TX_PLD)写入NRF24L01相应寄存器中。发送端发送完数据后,将通道0设置为接收模式来接收应答信号,其接收地址(RX_ADDR_P0)与接收端地(TX_ADDR)相同;

3.STC89C52RC将CE引脚设置高电平,激发NRF24L01的ShockBurstTM发送模式,CE高电平持续时间最小为10μs。

4.nRF24L01 ShockBurstTM发送模式:无线系统上电,射频寄存器自动开启;数据打包;发送数据包;

5.数据发送完后,CE被置低,自动进入空闲模式 NRF24L01的发送模块程序流程图如图4.4所示。