2.2 硬件模块图
主机AT89C51单片机用于对数据的采集,数据处理,存储温度上下限的控制。
DS1629是I2C数字温度传感器,输出方式为两线串行输出,主要作用是把温度值以数字形式输出和存储转换精度控制字。
报警电路用于测量值与设定值比较,超出则报警。
显示电路用于显示温度,时间,日历。
系统硬件模块图如图2.1所示。
2.1 硬件模块图
2.3软件模块图
课题使用汇编语言编写程序,系统的软件由数据采集、数据处理、温度显示及等部分组成。AT89C51完成的功能主要是数据处理、数据分析、控制计算、进制转换、数据显示、按键处理等。数据采样和转换部分由DS1629来完成。首先,由温度传感器DS1629对数据进行采样和转换,将测量结果送给单片机,单片机将输入的温度值进行数据处理,单片机再将处理好的数据传递给显示电路。
系统软件模块图如图2.2所示。
2.2 软件模块图
3 DS1629数字温度传感器
3.1 DS1629的结构特性及引脚
DS1629由6个部分组成:数字温度传感器、实时时钟、两线串行接口、数据寄存器、温度和时钟报警比较器及时钟分频器和缓冲器。由制造商标定的温度传感器无需外部器件。芯片一上电就开始进行温度转换。主机可以周期性地读取温度寄存器中最新转换的温度值;由于转换是在“后台”进行的,读数据并不影响转换的过程。二进制数据的读/写通过两线总线进行,高位在前,每个寄存器的访问都采用8位的命令协议。
DS1629的特点:
①实时日历时钟
②在-10~+85℃范围内,能达到±2℃的精度
③温度测量范围从-55~+125℃
④9位的温度分辨率
⑤温控器和时间报警设定值由用户定义,且具有非易失性(NV)
⑥专门的漏极开路报警输出
⑦提供32字节SRAM,用于保存一般的系统数据
⑧通过I²C线/SM Bus接口传输数据
⑨电压范围为2.7~5.5V
⑩150密尔(mil)、8引脚SO(DS16296)封装
DS1629芯片的引脚分布图如图3.1所示。
DS1629引脚分布图
①SDA:串行口数据I/O端
②SCL:串行口时钟I/O端
③ALRM: 报警输出
④GND:接地端
⑤X2:32.768kHz反馈输出
⑥X1:32.768kHz晶振输出
⑦OSC:振荡器输出
⑧VDD:2.2~5.5V电源
3.2 DS1629的工作原理
在DS1629中,温度测量采用的是片上的温度测量技术,测量范围为-55~+125℃,芯片可以通过编程配置为转换一次即保存转换结果,然后转到待命状态,也可以配置成连接转换的工作模式。
DS1629温度输出值为两字节,共为9位,高位字节中的最高位S为符号位,高位字节代表温度值的整数位;低位字节中只有最高位有效,此位为1时表示温度值的小数部分为0.5℃,在对温度精度要求不高的场合,可只读高位。表3.2给出了所测的温度和输出数据的关系。这些数据可通过两线制串行口连续输出,MSB在前,LSB在后。表3.3为温度数据二进制码。