基于AVR单片机捕获中断和热敏电阻的温度测量

分享到:

田开坤,徐海霞
(湖北师范学院 电工电子实验教学中心 湖北 黄石 435002)

 

温度测量常采用热敏电阻做传感器,测量的方法有R-V转换电压测量法和R-F转换频率测量法。这两种方法的电路复杂成本高,并且电路中很多元器件直接影响测量精度。本文介绍一种类R-F转换频率测量温度的方法。

1 负温热敏电阻

PSB型负温热敏电阻由Co,Mn,Ni等过渡金属元素的氧化物组成,经高温烧成半陶瓷,利用半导体毫微米的精密加工工艺,采用玻璃管封装,耐温性好,可靠性高,反应速度快、灵敏度高。他采用轴向型结构,便于安装,能承受更高温度,且玻璃封装耐高低温(-50~350℃)。PT-25E2热敏电阻温度阻值变化曲线图如图1所示。

2 AVR单片机测温原理

温度测量电路如图2所示,标准电阻Rp,热敏电阻Rt,电容C1与AVR单片机三个引脚相连。其中PC0,PC1为一般普通IO引脚,CP1为捕获触发输入引脚,可以设定上升沿触发捕获中断。

Rp为100 kΩ的精密电阻;Rt为100 kΩ精度为1%的热敏电阻;C1为0.1μF的瓷片电容。

其工作原理为:

先将PC0,PC1,CP1都设为低电平输出,使C1完全放电。

接着将PC1,CP1设置为输入状态,PC0设为高电平输出,通过Rp电阻对C1充电,同时启动内部定时器从零开始计时。电容实际充电曲线如图3所示,当C1上的电压逐步升高到Vh,CP1检测出电压达到单片机高电平输入门槛电压时,将定时器计数值捕获,从而测出从开始充电到CP1转变为高电平的时间Tp。

再次将PC0,PC1,CP1都设为低电平输出,使C1完全放电。

随后将PC0,CP1设置为输人状态,PC1设为高电平输出,通过Rt电阻对C1充电,过程同上,得到时间Tt。

通过单片机计算得到热敏电阻Rt的阻值,并通过查表法可以得到温度值。

从上述可以看出,该测温电路的误差来源于这几个方面:单片机的定时器精度,精密电阻Rp的精度,热敏电阻Rt的精度,而与单片机的输出电压值、门槛电压值、电容精度无关。因此,适当选取热敏电阻Rt和精密电阻Rp的精度,单片机的工作频率够高,就可以得到较好的测温精度。

3 AVR捕获

本文以AVR系列中高性价比的ATmage88为例,利用16位时钟单元T/C1的捕获中断来实现电容充电时间的测量,单片机时钟选择8 MHz。输入捕获单元方框图如图4所示。当引脚ICP1上的逻辑电平(事件)发生了变化,并且这个电平变化为边沿检测器所证实,输入捕捉被激发:16位的TCNT1数据被复制到输入捕捉寄存器ICR1,同时输入捕捉标志位ICF1置位。如果此时ICIE1为1,输入捕捉标志将产生输入捕获中断。

ATmega88在3.3 V供电时,当电容电压上升到1.84 V时,如图3所示,发生捕获中断。

4 软件设计

基于ATmage88捕获中断测温程序流程图如图5所示,包括主程序流程图,捕获中断流程图和定时溢出中断流程图。

ATmage88定时器初始化涉及TCCR1B,TIMSK1控制寄存器的配置,介绍如下:

ICNC1:输入捕捉噪声抑制器,“1”启用;

ICES1:捕捉触发沿选择,“1”上升沿,“0”下降沿;

CS1[2:0]:时钟选择,有多种预分频时钟可供选择;

ICIE1:T/C1输入捕捉中断使能;

TOIE1:T/C1溢出中断使能。

定时器T1初始化代码如下(AVR-GCC):

其中宏定义Tp=0;Tt=1;需要定义数组:

uint16_t timeL[2],timeH[2],counter[2]

当测量时间超过定时器最长计时时,定时器会溢出,定时器T1溢出中断函数代码如下:

最后通过查表法就可以得到测量的温度。查表温度间隔一般为1℃,如果忽略热敏电阻1℃以内的非线性误差,可以将两摄氏度之间取线性计算,这样可以得到0.1℃的分辨率。

5 结 语

笔者应用该方法已设计出一款温度计,在范围-10~80℃时,分辨率达到0.1℃,误差在0.5℃以内。本文充分利用了AVR的捕获功能,使得电路简洁,成本低廉。

继续阅读
使用NTC热敏电阻采集温度

本文提供了一种较为常规的使用NTC热敏电阻采集温度的方法。ADC_Temp进芯片ADC6端口,使用的是AVR的8位芯片Atmega48,芯片通过检测分压电路电压来换算出热敏电阻电阻值,进而获得实际温度值。

AVR单片机及其特点

AVR单片机是1997年由ATMEL公司研发出的增强型内置Flash的RISC(Reduced Instruction Set CPU) 精简指令集高速8位单片机。AVR的单片机可以广泛应用于计算机外部设备、工业实时控制、仪器仪表、通讯设备、家用电器等各个领域。

基于AVR单片机的嵌入式“瘦服务器”

本文的主要内容为:以AVR单片机为主控CPU芯片,提供“瘦服务器”的软件、硬件的组成框图。该“瘦服务器”的应用前途广泛,可以应用于各行各业的Internet远端监控系统中。主要应用于:(1)网络家电产品,通过该系统把数字化家电直接接入Internet网络,组成intelligentizedhome;(2)城市网络自动售货机;(3)城市交通Internet监控;(4)楼宇防火防盗Internet监控;(5)工厂生产设备Internet监控。

基于AVR单片机的电冰箱控制系统的设计

随着电冰箱在日常生活中的普及,人们对电冰葙的性能和控制功能的要求越来越高,为了满足人们实际生活中电冰箱的需要,以AVR单片机为核心,通过硬件和软件设计了电冰箱的控制系统,试验结果表明,该系统性能指标和功能达到了预期目的,具有功能齐全、操作简单、使用方便等优点。该系统在同类产品中处于较高水平,具有较高的实用价值。

基于MCU的温控器产品创新设计研究

基于人们对小家电越来越广泛的需求以及国内外激烈的市场竞争[1~5],本文对小家电中的重要零部件温控器进行了创新设计,并成功地用于电热水壶中,满足了市场对电热水壶多样化的需求。

©2018 Microchip Corporation
facebook google plus twitter linkedin youku weibo rss