本文介绍一种带I2C通信接口的数字温度传感器SD5075来实现测温功能。阐述了其软件和硬件设计方案,该测温装置的温度分辨率0.1℃,测温精度在-40℃~ +100℃范围内典型误差小于±0.5℃。
用传统的水银或酒精温度计来测量温度,不仅测量时间长、读数不方便、而且功能单一,已经不能满足人们在数字化时代的要求。本文提出了一种新型的数字式温度测量电路的设计方案。某公司研制了一款高精度数字温度传感器芯片SD5075,兼容ADT75/LM75A/TMP75,且价格更低,精度更高,可替代性好,本文将重点介绍。
【系统组成】
整个系统由数字温度传感器、单片机、显示、按键和电源这几个部分组成。
电路设计见下图:
SD5075可设置迟滞阈值寄存器和过温阈值寄存器。如果实际测试环境温度高于设置的过温阈值寄存器则通过开漏引脚ALARM输出报警 信号。实际环境温度低于迟滞阈值寄存器则解除报警信号。Alarm输出有2种可选的工作模式:Alarm比较器模式和Alarm中断模式。Alarm输出可选择高电平或低电平有效。详细的操作流程可参考SDIC网站的SD5075单总线数字温度传感器规格书。
SD5075介绍:
SD5075是一款高准确度温度传感器芯片,内含高精度测温ADC,在-40℃~ +100℃范围内典型误差小于±0.5℃,在-55℃~ +125℃范围内典型误差小于±1.0℃。通过两线I2C/SMBus接口可以很方便与其他设备建立通信。设置A2 ~ A0的地址线,可支持8片芯片并联总线连接。
SD5075典型应用框图:
本芯片可选3种工作模式:连续测温模式,单次测温模式,关断模式。可根据速度或功耗的需求灵活选择和配置。
SD5075特点:
1、12位数字温度读数,分辨率为0.0625℃。
2、在-40℃~+100℃范围内误差±0.8℃,在-55℃~+125℃范围内误差±1.5℃。
3、2线通信接口,跟I2C/SMBUS协议兼容。
4、提供过温报警功能,可设置过温阈值及迟滞恢复阈值。
5、可选连续测温模式或单次测温模式。
6、低功耗:连续测温时典型工作电流只有170uA,关断模式工作电流小于1uA.
7、工作电压范围:2.7V~5.5V.
8、管脚兼容ADT75/LM75A/TMP75.
SDA:两线通信数据线
SCL:两线通信时钟线
ALARM:作温度报警或者SMBus Alert用
GND:地
A2-A0:地址选择信号
VDD:电源
单片机
采用的单片机型号为SD8102,也是杭州晶华微电子研制的。具有16k Bytes OTP空间,256 Bytes SRAM,19个可编程I/O口,3个16位的定时/计数器,内置2M的RC振荡器。该单片机也可以采用普通的51单片机或PIC单片机替代。
显示、按键和电源
采用5位数码管显示,保留1位小数,输出方式采用动态扫描形式,选择单片机的5个I/O口作为数码管的位线和8个I/O口作为数码管的段线;
通过S0按键来切换摄氏度和华氏度显示。
采用外接电源方式供电(5~12V不需加限流电阻,大于12V时加个470R/3W的限流电阻),通过HT7533降压为3.3 V给系统各模块供电。
【软件设计】
单片机程序流程参考下图:
结语:
此测温方案选用的SD5075测温芯片具有功耗低,测温精度高和价格便宜等优点,非常适用于普通测温场合。同时还兼容ADT75/LM75A/TMP75等测温芯片。
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』