基于TMP04的PIC单片机测温设计
1 引言
在大多数测控系统中,温度都是必不可少的检测量,温度传感器也是测控系统中十分重要的传感器件。随着数字 化传感器技术的不断发展,出现了各种类型的数字温度传感器。数字温度传感器可以直接将被检测的温度信息以数字化形式输出,与传统的模拟式温度传感器相比,具有测量精度高、功耗低、稳定性好、外围接口电路简单特点。而单片机微处理器越来越丰富的外围功能模块,更加方便了数字式温度传感器输出信号的处理。数字式温度传感器主要的输出模式有PWM、SPI、I2C、SMBus等,当今主流的单片机几乎都支持这种接口方式,文中以PWM输出模式为例,讨论了PIC单片机对于这种输出模式的测温方案。PWM模式输出的数字温度传感器如TMP03/04、TPM05/06等,都是将传感器件测得的温度信息数字化后,经过一定的输出编码,调制成占空比与温度成正比的数字脉冲信号单线输出。输出信号接入微处理器后,只需测得数字脉冲信号的占空比就可由软件运算得到相应的温度信息。而对于微处理器来说,输入信号占空比的计算方式多种多样以PCI系列单片机为例,在PIC16、PIC17、PIC18中均可由CCP模块的捕捉功能、RB端口电平变化中断功能,外部中断功能等多种方法实现。以下将分别作以介绍。
2 硬件设计
由于数字式温度传感器直接输出数字脉冲信号,无需后续的AD转换和温度补偿,所以基于数字式温度传感器的测温电路硬件非常简单,仅需要单片机微处理器和传感芯片就可实现。除了个别集电极开路输出的传感芯片在接入单片机时需要外加上拉电阻以外,其余的传感芯片可与单片机直接相连。在此选用PCI系列单片机作为微处理器,ADI公司的TMP04数字式温度传感器作为传感芯片。
2.1 PIC系列单片机简介
PIC系列单片机是美国微芯(Microchip)公司生产的8位COMS单片机,它内部采用哈佛总线结构,使得全部指令单字节、单周期化,有利于提高CPU执行搜集的速度,从而提高单片机的运行速度。它的指令系统采用精简指令集(R1SC)技术,寻址方式非常简单,便于程序的编写与调试。它丰富的外部功能模块更是为外设提供了极其方便的接口,使得许多外部设备可以直接与微处理器进行通信。本设计采用的PIC18F458具有最大25mA的拉/灌电流、3个外部中断、4个定时器/计数器、2个捕捉/比较/脉冲调制(CCP)模块、SPI和I2C二种工作方式的主同步串行模块(MSSP)、可寻址的USART模块、高级10位8通道模数转换器以及集成的CAN总线模块等多种外围功能模块。
2.2 数字式温度传感器TMP04简介
TMP04是ADI公司生产的一款低功耗、高精度、宽动态输入范围的PWM模式输出的数字式温度传感器。TMP04是三端单线式器件,其总体功能框图如图1所示,测量结果以PWM编码式数字脉冲信号在DOUT引脚输出,输出信号的占空比与所测温度成正比,其输出编码格式以及具体的温度计算公式如图2所示。其中,T1一般为10ms,最大不赶12ms,T2随着温度的变化而变化,输出不同占空比的数字脉冲信号时表示不同的温度.
TMP04内部含有一个由输入采样器、模拟求和器、积分器、比较器、1位DAC以及数字滤波器构成的∑-Δ型模数转换器,如图3所示。该模数转换器具有分辨率高、线性度好、抗混叠哭声和量化噪声能力强等诸多优点,非常适用于数字式温度传感器等微传感系统。由于∑-Δ型模数转换器的作用,TMP04的最大功耗不超过6.5mW,全程线性误差只有0.5℃,稳定性非常高。同时TMP04的动态输入范围比较大,精度也比较高,在-25℃~125℃温度范围内误差仅为1.5℃。TMP04还有一个与其结构、功能很类似的同类产品TMP03,二者唯一的区别就是TMP03的输出级采用集电极开路电路,输出电流可达5mA,驱动能力强,可驱动光耦实现远程测温,接入单片机时需要外接上拉电阻,而TMP04的输出级采用互补型MOSFET电路,其输出电平与COMS/TTL电路兼容,可直接接入单片机。
3 软件设计
由PWM编码的原理可知,要测出PWM数字脉冲信号所携带的温度信号,只要检测出数字脉冲信号的占空比即可,以PIC18系列为例,一个单片机有9个不同的端口(2个CCP模块端口、4个RB电平变换中断端口、3个外部中断INT端口),可以测出TMP04的输出温度,这为PWM编码式温度数字传感器提供了相当灵活的接口方式和更为广阔的应用空间。
3.1 由CCP模块的捕捉功能实现
捕捉/比较/脉宽调制CCP模块是PIC单片机特有的外围功能模块,它与TMR1和TMR2配合使用实现输入捕捉、输出比较和脉宽调制输出等功能。其中输入捕捉模式用于测量引脚输入信号的周期、频率、脉宽、信号的到达时刻以及消失时刻等。结合TMP04输出信
数字式温度传感器 PCI单片机 TMP04 PWM 相关文章:
- PIC单片机数字式测温计设计及仿真(11-28)
- 基于DSP的磁流变阻尼器的控制方法(04-14)
- 用DSP56F805 PWM模块输出高频正弦波(05-25)
- 一种基于DSP的新型单相PWM算法研究(08-14)
- 基于DSP的自动避障小车(04-05)
- 基于DSP的逆变电源控制系统研究(04-28)