描述该DS18B20的数字温度计提供9至12位。信息被发送到DS18B20或者从DS18B20发出通过1线接口,所以中央微处理器与DS18B20只有一个一条口线连接。因为读写以及温度转换可以从数据线本身获得能量,所以不需要外接电源。 因为每一个DS18B20的包含一个独特的序号,多个DS18B20可以同时存在于一条总线。这使得温度传感器放置在许多不同的地方。DS18B20测量的温度范围从-55℃到+125℃,可在1s(典型值)内把温度转换成数字[2]。
图1 系统从机硬件实现框图
图2 系统主机硬件实现框图
1.4.2 采集数据的传输
数据采集发送部分上电后首先配置nRF24L01的相关寄存器,使其工作在发射状态,然后复位DS18B20,向DS18B20发送温度转换命令,读取已转换的温度值,然后由nRF24L01发送。
nRF24L01是一款新型单片射频收发器件,工作于2.4~2.5GHz ISM频段。无线收发器包括:频率发生器、晶体振荡器、调制解调器、功率放大器,并融合了增强型Shock Burst技术,输出功率、频道选择和协议的设置可以通过SPI接口进行设置。nRF24L01功耗低,当工作在发射模式下发射功率为-6dBm时电流消耗为9mA,工作电流也只有9mA,接收模式电流为12.3mA。待机模式和掉电模式下电流消耗更低。nRF24L01支持多点间通信,最高传输速率达2Mbit/s。嵌入的链路层控制减少了MCU的复杂性和成本,并且提高了数据传输的可靠性,它采用SOC方法设计只需少量外围元件便可组成射频收发[3]。
本次设计符型液晶显示器LCD1602进行数据的显示,液晶显示稳定无闪烁而且价格低廉节约开发成本。报警部分采用LED和压电式蜂鸣器可以实现声光报警。
1.4.3 采集数据处理及显示
主机nRF24L01收到采集到的数据后通过单片机AT89S52传输到液晶屏幕上显示同时实现对温度数据的判断,当温度超限时打开报警提示。系统对温度的控制采用电磁继电器驱动风扇和电热丝的工作方式实现。当温度低于设定温度时,使用电热丝进行升温并采用蜂鸣器报警,直到温度达到设定温度范围;当温度高于设定温度时,使用换气扇进行降温并采用蜂鸣器报警,直到温度达到设定温度范围,在实际设计过程中考虑到电热丝市场很难买到,实际的设计采用LED来模拟此功能[4]。
2. 系统硬件设计
2.1 系统元器件选型及参数介绍
2.1.1 系统单片机的选型与介绍
本课题采用ATMEL公司的AT89S52单片机作为控制系统的核心。AT89S52是一种低功耗、高性能的CMOS8位微控制器,具有8K在系统可编程Flash存储器,与工业89C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。使得AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。
相对于89C51和89S51,89S52多了对P1口的第二定义和一个16位的计数/定时器T2。AT89S52单片机有一个全双工的串行口,可作为通用异步接收和发送器(UART)用,也可作同步移位寄存器用。AT89S52串行口主要由发送控制器、两个物理上独立的串行数据缓冲寄存器SBUF、输入移位寄存器、接收控制器和输出控制门组成,发送缓冲器SBUF,只能写;接收缓冲器SBUF,只能读。两个缓冲器共用一个地址99H,可以用读/写指令区分。在引脚上,AT89S52单片机通过引脚RXD(P3.0)和引脚TXD(P3.1)与外界进行通信[5]。AT89S52单片机引脚图如图3所示。
图3 AT89S52单片机引脚图
AT89S52芯片具有以下特性[6]:
(1)指令集和芯片引脚与Intel公司的8051兼容;
(2)32 个双向I/O口;
(3)三个16位定时器/计数器;
(4)掉电后中断可唤醒;
(5)看门狗(WDT)电路 AT89S52单片机最小远程监控系统的设计与开发+程序代码+电路图(4):http://www.751com.cn/zidonghua/lunwen_1669.html