图4-4 无线接收软件流程图
4.2总体的软件设计 4.2.1 发送部分
发送部分的总体思路:初始化温度传感器,DS18B20测得温度,接着把温度值写入待发射数据,然后初始化nRF24L01无线模块,将温度发送给主机,其流程图如图4-5所示。
开始
初始化 发射数据 从DHT11读温湿度 延迟 转为十进制 将温湿度写入发射数组 21
图4-5 发射部分总体流程图
4.2.2接收部分
接收部分首先是初始化nRF24L01无线模块,接着判断是否出现接收中断。如果有读入数据并经过处理在LCD1602上显示,其流程图如图4-6所示。
图4-6 接收部分总体流程图
4.3 本章小结
本章主要是对系统程序和程序的设计思想作了说明,并介绍了每个模块的程序流程和最终流程,系统软件采用模块化编程思想,因此,在软件调试时,总是可以调用子模块程序,有利于子模块调试。
第五章 系统的调试及实验结果
5.1 调试步骤
22
步骤一:完成硬件电路的焊接。电路图和实物图如下:
步骤二:首先烧写入简单测试程序,检验LCD1602显示没有问题。
步骤三:将接受部分的单片机连接上一块数码管上,写入测量温湿度的程序。测试DHT11相关硬件及软件。
步骤四:搭建简单的无线通信硬件,写入简单的测试测序,检测收发硬件模块。
步骤五:将所用测序写在一起,搭建完成主机和从机的完整硬件,检测系统是否能把从机测得的温湿度值通过无线模块通信从而在LCD1602上显示出来。
23
5.2实验结果
通过调试实验得到一些实验数据,具体结果如表5-1所示:
日期 温度℃ 湿度% 2015.7.5 2015.7.6 2015.7.7 2015.7.8 2015.7.9 32 50 31 52 27 64 29 59 28 55 表5-1
从图中可以看出整个系统符合了设计的要求,并且收发距离也达到了设计的原始要求。 5.3本章小结
本章主要介绍了系统硬件搭建和软件调试以及实验结果。 软件和硬件调试使用子模块测试的方法,确保每个模块都能正常工作了才进行整合,减少了调试的工作量。
最后我们对测温系统进行了简单的实验,基本满足本次设计的要求 。
结论
24
本次设计采用了STC89C52RC来采集和处理数据,通过传感器收集非电信号。系统中采用直接数字输入型温湿度传感器DHT11实现了数字温湿度计无线监测系统。本系统设计采用DHT11具有精度高,抗干扰能力,电路简单,可在单总线上挂载多个传感器的优点。相反,传统的温检测系统采用热门电路来测量环境温度,虽然成本很低,但精度差,可靠性不好,且不是全数字输出,需要AD转换电路,增加了电路的复杂性。。
本设计采用NRF24L01无线通信模块来实现温湿度的监控,省去传统的布线麻烦,保持了电路的简洁,方便整个系统的安装和维护。但在此次设计中同样遇到一些技术难题,例如,对无线模块NRF24L01的程序的编写和调试。
不过,通过这次设计增加了我的学习能力和理解能力,对无线传输也有了一定的了解。
不断地在网上和图上馆翻阅相关资料,经过一个月的努力,本次设计已经达到了预期的目的。相关工作总结如下: 一. 本设计内容重点:
(1) NRF24L01无线传输模块的调试。 (2) DHT11的各种操作命令。 (3) 单片机液晶显示。 二. 研究展望
随着科技的发展,温湿度监控系统正朝着高精度,体积小,多点式,可靠性高,易于安装和维护的方向迅速发展。
25