关键词: 无线 温度监测 OLED DS18B20 语音 单总线
一 引言
温度历来是一个非常重要的参数。在工业、医疗、军事和生活等许多地方,都需要用到测温装置来检测温度。随着当今无线技术的发展,如何把无线技术应用到实际的产品中去也是一个非常热门的话题。同样,由于嵌入式系统的高速发展,现今的诸多产品都体现了一定的智能化。本文所介绍的一款自主研发的智能无线温度监测系统,是集当今诸多先进技术(如OLED显示、语音提醒、无线传输等)于一体的智能化监测系统,可应用于环境温度的检测、物体温度检测,也适用于汽车轮胎等场合。
二 总体架构
总体架构设计如图1所示,分为两大模块:检测发送模块和接收监测模块。其中,检测发送模块包括:温度传感器DS18B20,用来采集对象的温度;27MHz无线发送模块ET13X221,用来发送微处理器给出的高低信号;微处理器ET44M210CONTROL ENGINEERING China版权所有,用来控制温度传感器的工作,把采集而来的数据进行进一步处理、打包,加上传输协议后,再控制无线发送模块把数据发送出去。接收监测模块包括:27MHz无线接收模块ET13X210;OLED显示模块ET52141,
三 各组成部分的设计及其功能的实现 下面将会详细说明每个部分的具体设计和其功能的实现。功能有: (1)温度的实时检测与显示; (2)多级别报警,在线改变报警值; (3)语音播报温度和过温提示; (4)存储温度的历史记录,便于事后查询。 1. 温度采集部分 温度采集部分是由温度传感器DS18B20来完成的。它是最新型的数字化温度传感器,是单总线1-Wire器件家族中的一员。它使用一种片内专有的温度测量技术测温。利用高低温度系数振荡器记录由当时环境温度所确定的计数值,以此确定即时温度。内部主要有测温电路、1-Wire接口电路、存储电路及CRC校验电路。 DS18B20的诸多优点使得系统设计更灵活、方便。它只有3个引脚,分别接电源和地,还有一个引脚就是用来实现通信的。其单总线的数字方式传输,可大大提高系统的抗干扰能力。主机与DS18B20交换数据,主要靠CPU按照1-Wire单总线协议在单总线上产生复位时序和读写时序来实现。DS18B20每一步操作都要遵循严格的工作时序和通信协议。现举DS18B20复位的例子来说明它是如何与主机通信的。如图2所示是DS18B20的复位时序。 按照时序图给出的要求,需要对DS18B20进行复位操作,其源代码(基于ET44M210的汇编语言)如下。 START: MOV A, #00 MOV DATA_CON,A ; 口线改为输出 BS DATA, DAT ; 置数据口的该位为1 NOP BC DATA, DAT ; 置数据口的该位为0 CALL DELAY_500μs ; 主机发复位脉冲持续500μs低电平 BS DATA, DAT ; 主机释放总线 MOV A, #0xFF MOV DATA_CON,A ; 口线改为输入 CALL DELAY_60μs ; DS18B20等待60μs JBS DATA, DATCONTROL ENGINEERING China版权所有, START ; 主机查询DS18B20数据线是否变低,即 ; 判断DS18B20是否准备好控制工程网版权所有,未准备好www.cechina.cn,重新初始化 主机先发送复位脉冲信号(低500μs),等待DS18B20响应,如果DS18B20有响应脉冲(60μs后口线由高变低),单片机检测出此脉冲后,则其复位初始化成功。
这里要特别提醒一点:必须要注意所采用单片机的I/O口是否挂有上拉电阻。在这里,如果没有上拉电阻www.cechina.cn,单片机是检测不到DS18B20的应答信号的(响应脉冲)或者说检测出错误信号。实践证明,当加上上拉电阻时,程序才能正确调试通过。 DS18B20的读写数据的情况