基于单片机的多路温度测控系统
1 DS1825的工作原理
DS1825采用8管脚μSOP封装,管脚排列如图1所示。图中VDD为外接供电电源输入端(在寄生电源接线方式时接地), DQ为数据输入/输出端(即单线总线),NC为空管脚, GND为地,AD0、AD1、AD2、AD3为地址端。DS18B25内部结构如图2所示,主要由64位激光ROM、温度传感器、存放中间数据的高速暂存器RAM、用于存储用户设定的温度上下限值的TH和TL寄存器、配置寄存器、8位循环冗余校验码(CRC)发生器、地址输入端等部分组成。
1.1 64位激光ROM
64位激光ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS1825的地址序列码。前8位是产品类型的编号(DS1825为3Bh),接下来48位是每个器件的唯一序列号,最后8位是前56位的循环冗余校验(CRC=X8+X5+X4+1),这是多片DS1825可以采用单线进行通信的原因。
1.2 温度传感器
DS1825中的温度传感器可完成对温度的测量,用16位符号扩展的二进制补码读数形式提供,以0.0625℃/LSB形式表达,其中S为符号位。
1.3 TH和TL寄存器、配置寄存器
它们均由EEPROM组成,使用一个存储器功能命令可对TH和TL寄存器、配置寄存器写入。8字节的配置寄存器的格式如下:字节0、1、2、3为AD0~AD3管脚的地址,字节4为1,字节7为0,字节5、6为R0、R1,用来设置温度转换的精度位数。
1.4 高速暂存器
它是一个9字节的存储器,开始两个字节包含被测温度的数字量信息;第2、3字节存储上、下限报警温度TH和TL;第4字节是配置寄存器的临时拷贝,每一次上电复位时被刷新;第5、6、7字节用于内部计算;第8字节读出的是前8个字节的CRC校验码,用来保证通信正确。
1.5 8位循环冗余校验码(CRC)发生器
在64位激光ROM的最低8位字节中存有CRC,主机将根据ROM的前56位来计算CRC值,并与存入DS1825的CRC值进行比较,以判断主机接受到的ROM数据是否正确。DS1825完成温度转化后,就把测得的温度与TH、TL作比较。如果温度高于TH或低于TL中的值,则将该器件内的告警标志置位,该标志每次测量温度时都要进行更新。一旦报警标志设置后,器件就会响应主机发出的报警搜索命令,这种处理方式使得并接的多个DS1825可以同时实现温度测量。如果某些点上的温度超过设定的阈值,则这些报警的器件就能被及时识别出来,主机不必一个一个地读取。
2 多路温度测控系统的硬件电路设计
用单片机控制的多路温度测控系统的电路如图3所示。系统由AT89C52单片机、温度采集电路、键盘输入、数码显示电路、系统复位电路和输出控制电路组成。AT89C52单片机带有8KB Flash闪存,可简化系统设计且性能可靠[2];用它来实现对8片DS1825的信号采集和输出控制,同时检测8路温度(视实际需要通道数可以扩展到16路)。AT89C52的P1.1口接单线总线。每片DS1825采用外接电源供电方式,增强DS1825的抗干扰能力,保证系统工作的稳定性。地址端AD0、AD1、AD2、AD3分别与电源地和高电平相连接,从而确定每一片的唯一地址(0000~0111)。为保证在有效的DS1825时钟周期内能提供足够的电流,用一个MOSFET管和AT89C52的P1. 0口来完成对DS1825的总线上拉。P1.6、P1.7口可以用来输出温度测控信号,经驱动器MC1413驱动两个固态继电器,通过改变加热或致冷系统的工作状态,可实现对被检测系统的实时控制。键盘扫描和动态扫描的显示采用一片可编程接口芯片8279,采用8位共阴极LED数码管,用来显示通道数、当前各通道温度测量值和键盘设定的温度上下限值。为防止电源干扰造成系统误动作,提高系统可靠性,该系统设计了由硬件和软件构成的“看门狗”。硬件看门狗由X25045[3]及外围电路组成,按键S1为手动复位,具有上电复位控制和电源电压监控功能,能诊断电源瞬间短路、降压、尖峰脉冲干扰,并产生复位信号从而使系统在电源发生上述情况下能正常运行。
相关文章
- 2023-12-09关于热声驱动器水冷却器传热和压降的讨论
- 2022-03-09基于计算机视觉的石油钻杆裂纹检测系统研析
- 2023-12-19拉压不同模量有限元法剪切弹性模量及加速收敛
- 2022-07-14国产Nz一T型扭振分析记录仪及其应用实例
- 2023-09-11一种计算空间平面的平面度误差新方法
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。