登录
|
注册会员
开启辅助访问
设为首页
收藏本站
扫一扫关注官方微信
论坛
BBS
M币充值
M currency prepaid phone
M币获取
附件中心
搜索
search
全新论坛MCU智学网上线,欢迎访问新论坛!稀缺资源、技术干货、参考设计、原厂资料尽在MCU智学网
MCU资讯论坛
»
论坛
›
单片机论坛
›
单片机应用于方案
›
基于PWM模式输出的TMP04型数字式温度传感器的测温系
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版
基于PWM模式输出的TMP04型数字式温度传感器的测温系
[复制链接]
1865
0
ad***
管理员
发表在
电源技术
2014-4-3 13:44:04
|
查看全部
|
阅读模式
本文包含原理图、PCB、源代码、封装库、中英文PDF等资源
您需要
登录
才可以下载或查看,没有帐号?
注册会员
x
数字温度传感器可直接与微处理器进行接口,大大方便了传感器输出信号的处理。本文以PWM模式输出的
TMP
04
型数字式温度传感器为例,介绍由
PCI
单片机
实现的几种测温方案,并给出软件设计流程。
1 引言
数字式温度传感器主要的输出模式有PWM、
SPI
、I2C、SMBus等,当今主流的单片机几乎都支持这种接口方式,文中以PWM输出模式为例,讨论了P
IC
单片机对于这种输出模式的测温方案。PWM模式输出的数字温度传感器如
TMP03
/04、
TPM
05/
06
等,都是将传感器件测得的温度信息数字化后,经过一定的输出编码,调制成占空比与温度成正比的数字脉冲信号单线输出。输出信号接入微处理器后,只需测得数字脉冲信号的占空比就可由软件运算得到相应的温度信息。而对于微处理器来说,输入信号占空比的计算方式
多种
多样以PCI
系列
单片机为例,在
PIC
16
、PIC
17
、
PIC18
中均可由CCP
模块
的捕捉功能、RB端口电平变化中断功能,外部中断功能等多种方法实现。以下将分别作以介绍。
2 硬件设计
由于数字式温度传感器直接输出数字脉冲信号,无需后续的
AD
转换和温度补偿,所以基于数字式温度传感器的测温电路硬件非常简单,仅需要单片机微处理器和传感芯片就可实现。除了个别集电极开路输出的传感芯片在接入单片机时需要外加上拉
电阻
以外,其余的传感芯片可与单片机直接相连。在此选用PCI系列单片机作为微处理器,
ADI
公司的TMP04数字式温度传感器作为传感芯片。
2.1 PIC系列单片机简介
PIC系列单片机是美国微芯(
Microchip
)公司生产的8位CO
MS
单片机,它内部采用哈佛总线结构,使得全部指令单字节、单周期化,有利于提高
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
以及数字
滤波器
构成的&
sum
;-Δ型模数转换器,如图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单片机特有的外围功能模块,它与
TMR
1和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单片机定时器预分频比的设定,应在保证测量传感器信号脉宽进不会发生溢出的情况下使分频比最小,这样有利于提高测量精度。
温度传感器
,
微处理器
,
单片机
,
接口
相关帖子
怎么可以使51单片机和STC11系列的程序兼容呢
云龙51单片机视频教程,目前国内公认的最好的入门视频教程
求助!TX-1C开发板51串行中断 if 语句无法执行问题(看起来很简单,但不知为何总调不过去
求助
关于51单片机处理串口所接收到的数据的判断
国产单片机推荐:无锡矽杰微电子XC8P8600
51单片机(STC8051U34K64)_RA8889_SPI4参考代码(v1.3)
51单片机(STC8H8K64U/STC8051U34K64)_RA8889_8080参考代码(v1.3)
51单片机(STC8H8K64U/STC8051U34K64)_RA8889_HW_SPI4参考代码(v1.3) 硬件SPI方式
单片机驱动彩屏最简方案:单片机_RA8889最小开发板驱动控制TFT彩屏介绍(一)
举报
回复
返回列表
*
滑块验证:
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册会员
本版积分规则
发表回复
回帖后跳转到最后一页
回复
转播
评分
分享
打开支付宝扫一扫,最高立得1212元红包
搜索
本版
帖子
用户
热搜:
传感器
51串口程序
电子管放大器
夾式電表
夾式電流
Mentor论坛
打印机
版块推荐
百宝箱
My 布拉格
无边框Z9
Z9Max
Z9mini
nubia动态
问题 & 建议
资源分享
爱拍
同城会
牛仔生活
查看论坛所有版块>>
每日签到
论坛任务
摄影技巧
跳蚤市场
互助问答
论坛导读
申请内测
红包中心
每日摇一摇
活动中心
网站地图
官方旗舰店
图文热点
VK1S38A SSOP24点阵数显LED驱动芯片/数码管
VK1S38A是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3
点阵LED数显屏驱动芯片/数码屏显示IC-VK162
VK1628是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3线
数显屏驱动原厂-VK1668 SOP24抗干扰数显LED
产品品牌:永嘉微电/VINKA 产品型号:VK1668 封装形式:SOP24 概述 VK166
抗干扰LED数码管显示屏驱动芯片/3线串行接
VK1Q68D是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片。内部集成有3线
抗干扰能力强/点阵数显LED屏驱动/数码管驱
VK1S68C是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3 线串
更多
精华推荐
VK1S38A SSOP24点阵数显LED驱动芯片/数码管
点阵LED数显屏驱动芯片/数码屏显示IC-VK162
数显屏驱动原厂-VK1668 SOP24抗干扰数显LED
抗干扰LED数码管显示屏驱动芯片/3线串行接
抗干扰能力强/点阵数显LED屏驱动/数码管驱
可支持14×4的点阵LED显示面板数码管LED驱
数显驱动器原厂-数显LED显示驱动芯片VK1620
抗干扰数显驱动数码管LED驱动芯片VK1618 SO
更多
社区学堂
VK1S38A SSOP24点阵数显LED驱动芯片/数
点阵LED数显屏驱动芯片/数码屏显示IC-V
VK1S38A SSOP24点阵数显LED驱动芯片/数码管
VK1S38A是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3
点阵LED数显屏驱动芯片/数码屏显示IC-VK162
VK1628是一种带键盘扫描接口的数码管或点阵LED驱动控制专用芯片,内部集成有3线
数显屏驱动原厂-VK1668 SOP24抗干扰数显LED
产品品牌:永嘉微电/VINKA 产品型号:VK1668 封装形式:SOP24 概述 VK166
更多
客服中心
QQ:187196467
服务时间:周一至周日 8:30-20:30
在线客服
客服微博
产品咨询
售后中心
关注我们
关于我们
关于我们
友情链接
联系我们
帮助中心
网友中心
购买须知
支付方式
服务支持
资源下载
售后服务
定制流程
关注我们
官方微博
官方空间
官方微信
QQ:187196467
周一到周日 8:30-22:00 (全年无休)
7 x 24小时在线客服
手机版
Powered by
MCUZX!
X3.4 © 2008-2015
MCU资讯论坛
版权所有
京ICP备18035221号-2
客服QQ: 187196467
技术支持:
MCU资讯论坛
|
网站地图
快速回复
返回顶部
返回列表