一种多用智能温度测量仪的设计与实现
1.2 硬件电路设计
系统硬件电路如3所示。本文引用地址:https://www.eepw.com.cn/article/162343.htm
包括信号采集、系统控制、数字显示、高温报警四个部分。传感器DS18B20为信号采集器件所采集到的温度信号,通过内部处理由传感器的DQ端送到单片机P3.2端口,经单片机的计算处理后,由P0口和P1口分别作为4位共阳数码管的段控信号和位控信号,共同完成对所测温度值的数字显示,最高位是符号显示,如显示负号“-”时,表示当前温度是负温度,否则为正温度;由P2.0端口控制蜂鸣器,当测量的温度超过“预设报警温度”时,发出提示音报警;P2.1~P2.3端口来控制黄、绿、红3个发光二极管分别表示低温、正常、高温三种温度状态。石英晶体JT和电容C2,C2共同组成晶振电路;电容C1、电阻R13、SB共同构成复位电路;其中电阻R13。为下拉电阻,SB为手动复位按钮。
2 软件设计
为了便于子程序的调用和维护系统,程序遵循标准化、模块化的原则,主要完成包括读DS18B20温度数据、数据的整理转换、温度显示、报警等模块的设计。由于程序任务相对较少,结构相对简单,本系统由主程序和多个子程序组成,采用顺序性结构主程序流程。
2.1 软件设计要点
由于DS18B20采用的是单线总线协议方式,即在一条数据线上实现数据的双向传输,而单片机硬件上不支持单总线协议,因此必须采用软件方法来模拟单总线的协议是序来完成对DS18B20芯片的访问。
由于DS18B20是在一根I/O线上读写数据,因此对读写的数据位有严格的时序要求,它有严格的通信协议来保证各位数据传输的正确性和完整性。该协议定义了几种信号的时序:初始化时序、读时序、写时序。所有时序都是将单片机作为主设备,DS18B20作为从设备,而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求DS18B20回送数据,在进行写命令后,主机需启动读时序完成数据接收。
评论