基于PWM模式输出的TMP04型数字式温度传感器的测温系统

发布者:zuiquan最新更新时间:2014-11-05 来源: 21ic关键字:数字温度传感器  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电路兼容,可直接接入单片机。[page]

∑-Δ型模数转换器

  3 软件设计

  由PWM编码的原理可知,要测出PWM数字脉冲信号所携带的温度信号,只要检测出数字脉冲信号的占空比即可,以PIC18系列为例,一个单片机有9个不同的端口(2个CCP模块端口、4个RB电平变换中断端口、3个外部中断INT端口),可以测出TMP04的输出温度,这为PWM编码式温度数字传感器提供了相当灵活的接口方式和更为广阔的应用空间。

  3.1 由CCP模块的捕捉功能实现

  捕捉/比较/脉宽调制CCP模块是PIC单片机特有的外围功能模块,它与TMR1和TMR2配合使用实现输入捕捉、输出比较和脉宽调制输出等功能。其中输入捕捉模式用于测量引脚输入信号的周期、频率、脉宽、信号的到达时刻以及消失时刻等。结合TMP04输出信号的特点,可以利用CCP模块分别测量出TMP04输出信号的高电平脉宽T1和低脉宽T2,然后间接算出信号的占空比,从而得到TMP04输出的温度信息。详细的程序流程图如图4所示。

  3.2 由RB端口电平变化中断实现

  与其它单片机不同,PIC单片机的RB4-RB7端口具有输入电平变化中断功能,当RB4-RB7任意一个引脚上的输入电平发生变化(由高变低或由低变高)时,都可以引起CPU中断,执行中断处理程序。因此,可以将TMP04的输出信号输入RB4,当输入RB4的信号发生跳变时,利用RB4的电平变换中断调用中断处理程序分别对信号高低电平的脉宽进行测量,从而间接算出信号的占空比,最终得到TMP04输出的温度信息。程序流程图如图5所示。

  3.3 由外部中断INT实现

  由外部中断INT实现与由RB端口电平变化中断实现的设计方案类似,都是由单片机响应电平变化产生中断,再通过中断服务程序计算高低脉宽,从而得到TMP04输出信号的占空比和所携带的温度信息。所以由外部中断INT实现和由RB端口电平变化中断实现程序类似,只是将中断源改为INT0(INT1,INT2均可)中断,使能INT0中断使能位INT0IE,判断INT0中断标志位INT0IF,由于INT0输入为RB0引脚,上例中设RB0为输入,并由INTEDG0判断高低电平即可,注意要启动RB口的弱上拉功能,其总体的程序流程程图类似图5。

  4 实验数据对比

  利用简单的电路及以上软件程序在室温为24.1℃时,笔者用三种方法测量温度,为了得到更好的精度,每种分别设计了泄编和C评议二种测温程序,其结果与平均值如表1所示。

  表1 测试结果与平均值

  5 结束语

  由于测量脉宽是由定时器在高电平(低电平)期间计数实现的,所以单片机的指令周期将直接影响到测量的精度,指令周期越短精度越高。但是如果指令周期短而晶振频率高,将会引入高频干扰,所以晶振要根据系统实现情况选取。此外还要注意PIC单片机定时器预分频比的设定,应在保证测量传感器信号脉宽进不会发生溢出的情况下使分频比最小,这样有利于提高测量精度。

关键字:数字温度传感器  Pic单片机  测温系统 引用地址:基于PWM模式输出的TMP04型数字式温度传感器的测温系统

上一篇:基于RFID的室内定位系统设计
下一篇:轻松学PIC之SPI总线篇

推荐阅读最新更新时间:2024-03-16 13:45

PIC单片机如何从汇编转向PICC
一、如何从汇编转向PICC 首先要求你要有C语言的基础。C代码的头文件一定要有#include,它是很多头文件的集合,C编译器在pic.h 中根据你的芯片自动载入相应的其它头文件。这点比汇编好用。载入的头文件中其实是声明芯片的寄存器和一些函数。 static volaTIle unsigned char TMR0 @ 0x01; staTIc volaTIle unsigned char PCL @ 0x02; staTIc volatile unsigned char STATUS @ 0x03; 可以看出和汇编的头文件中定义寄存器是差不多的。如下: TMR0 EQU 0X01; PCL EQU 0X02; STATUS E
[单片机]
<font color='red'>PIC单片机</font>如何从汇编转向PICC
pic单片机控制HT1621 LCD程序
p IC 单片机 控制HT1621 LCD 程序 ;THIS PROGRAM IS HT1621 LCD DISPLAY ;VDD=5.0V IF VDD 5.0V PLEASE TO DELAY ;RECEIVE AND TRANSMIT BYTR’TIM ; FSR EQU 4H RB EQU 6H GENR0 EQU 09H GENR1 EQU 0AH WD_RG EQU 0BH ;the registers of LCD DISPLAY DATA DA_AG0 EQU 10H ;SEG0 SEG1 DA_AGF EQU 1FH ;SEG30 SEG31 ; ;RB BITS CS EQU
[单片机]
PIC单片机内部SPI通信接口的使用方法
#include pic.h #define uchar unsigned char #define uint unsigned int #define cs RC2 #define dout RC4 #define nop() asm( nop ) __CONFIG(0x3B31); const uchar table ={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; uchar da ta_temp; void delay(uint x); void init(); void didi
[单片机]
基于PIC单片机的智能型漏电继电器的设计
漏电继电器是一种可在被保护线路漏电电流达到设定值后切断被保护线路供电电源的保护装置,在电力系统中起着非常重要的作用,是保证供电可靠性的基础。随着电子技术和计算机技术的发展,电力系统的继电保护突破了传统的数字式保护继电器,出现了以微处理器为核心的智能保护继电器 。本文利用PIC18F6585型单片机设计了一款智能型漏电继电器,具有自诊断、故障记录、数据通信等多种功能,为故障分析提供便利,且具有较高的可靠性。 1 PIC系列单片机特点 PIC18F6585是由Microchip公司开发、研制和生产的PIC系列单片机,该系列单片机的技术性能具有以下优点 : (1)哈佛总线结构。PIC系列单片机在架构上采用了与众不同的哈佛总线
[单片机]
PIC单片机内部EEPROM读写子程序(转贴)
;实战《内部EEPROM读写实验》 ;本实战的目的是让大家熟悉PIC16F87X内部EEPROM的读写方法 ;项目实现的功能:对于地址为00H-3FH的64个EEPROM数据存储单元, ;分别将数据0-63依次烧写进去,然后再循环读出,显示在8只LED发光二极管上 ;PIC单片机学习网 陈学乾 http://www.pic16.com ;程序文件名“MCD-EMP1.ASM” ;程序清单如下: ;************************************ STATUS EQU 3H ;定义状态寄存器地址 RP0 EQU 5H ;定义页选位RP0的位地址 RP1 EQU 6H ;定义页
[单片机]
PIC单片机的类型以及特征介绍
对于pic单片机,大家或多或少均有所耳闻。但是,大家对pic单片机有多少了解呢?是否熟知不同类型的pic单片机呢? 由美国Microchip公司推出的PIC单片机系列产品,首先采用了RISC结构的嵌入式微控制器,其高速度、低电压、低功耗、大电流LCD驱动能力和低价位OTP技术等都体现出单片机产业的新趋势。现在PIC系列单片机在世界单片机市场的份额排名中已逐年升位,尤其在8位单片机市场,据称已从1990年的第20位上升到目前的第二位。PIC单片机从覆盖市场出发,已有三种(又称三层次)系列多种型号的产品问世,所以在全球都可以看到PIC单片机从电脑的外设、家电控制、电讯通信、智能仪器、汽车电子到金融电子各个领域的广泛应用。现今的PI
[单片机]
<font color='red'>PIC单片机</font>的类型以及特征介绍
基于ARM和DS18B20的数字测温系统
  热误差是数控机床的最大误差源,数控机床的温度测试为机床热误差的补偿提供依据。传统的测温方案是将模拟信号通过电缆远距离传输至数据采集卡进行A/D转换并处理,实用中必须解决长线传输和模拟量传感器布线等问题。本文介绍了一种新型的设计方案,控制器采用SAMSUNG公司的32位ARM微控制器S3C44BOX,温度传感器采用单总线数字温度传感器DS18B20。采用数字温度传感器即在测试点完成了信号的数字化,提高了传输的可靠性,同时简化了外围电路,也便于传感器在机床上的布置安装。ARM处理器控制数字温度信号的采集,并与上位PC机通讯,同时其他硬件资源提供热补偿系统其他功能。本文在介绍数字温度传感器DS18B20的基础上,给出了系统的软硬件设
[电源管理]
基于ARM和DS18B20的<font color='red'>数字</font><font color='red'>测温</font><font color='red'>系统</font>
pic单片机p18f458A/D中断转换程序
//程序实现 A/D 转换功能,A/D采用中断方式。该程序通过p IC 单片机 p18f458的RA2模拟通道送入一直流 电压 , //当送入的直流电压大于2.5V时,与PORTD口相连的8个 发光二极管 闪动,当直流电压恢复到 //http://www.51hei.com 单片机 网提供此ad转换程序,有问题请联系本站。 //2.5V以下时,发光 二极管 停止闪动,且只有低四个发光。 #include p18f458.h union adres { int y1; unsigned char adre ; }adresult; //定义一个共用体,用于存放A/D转换的结果 unsigned char i; unsigne
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved