AT89C2051双向温度监控系统的设计
时间:02-14
来源:超前科技开发网
点击:
1 引言
某些应用场合需要监测温度,要求温度保持在一定范围内。例如农作物温床育苗在20℃~30℃,家禽孵化在37℃~40℃,菌种培育在23℃~28℃。而普通单向超温报警难以满足要求,因此,提出一种利用温度传感器与单片机应用系统的双向超温控温系统设计方案。该系统设计能显示超下限或超上限温度,且可预置超温点。
2 系统设计原理
图l所示为系统设计框图。首先通过键盘输入温度允许变化的上下限值,在正常情况下,应保持温度介于上下限值之间,当温度高于上限值时,则降温并报警;当温度低于下限值时,则升温并报警。
单片机控制器内部定时器每隔一定时间温度值采样一次,并产生一次定时中断。定时器中断服务程序主要对所采样的温度值与设定的温度上、下限值分别比较,判断是否达到温度上、下限值,从而决定是升温还是降温并报警,实现温度的双向自动控制,还可实现故障报警及通过键盘改变设定温度的上、下限值。
热敏电阻采用半导体感温元件,它具有负电阻温度特性,当温度升高时,电阻值减小。为此向热敏电阻施加恒定电流,测量电阻两端电压,然后通过测温公式求得温度:T=T0-KUT,其中T为被测温度,T0为与热敏电阻特性有关的温度参数,K为与热敏电阻特性有关的系数,UT为热敏电阻两端的电压。K和T0为常数测得热敏电阻两端的电压,可计算热敏电阻的环境温度。这样就将电阻随温度的变化转换为电压随温度的变化,该电压再经A/D转换器转换变成数字量,通过软件计算出温度值。
3 硬件电路
本系统设计是由AT89C2051单片机、AD574A、可编程键盘与接口器件8279、温度传感器、LED显示器、看门狗电路等组成。
3.1 AT89C2051单片机
AT89C205l是ATMEL公司生产的高性价比的8位单片机,该器件采用80C3l内核指令系统,与MCS一51完全兼容;内含2 KB的Flash可作为用户程序存储器和128字节的随机存取数据存储器(RAM);内含2个程序加密位,可防止程序非法读出,安全性好;其低压、高性能CMOS的8位机与MCS一5l指令和输出引脚相兼容,构成一个最小的测量系统;有20个引脚,15个双向输入/输出(I/O)端口,其中Pl是一个完整的8位双向I/O口,2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,1个模拟比较放大器;AT89C2051的时钟频率可为零,即具备可用软件设置的睡眠省电功能,系统的唤醒方式有RAM、定时/计数器、串行口和外中断口,系统唤醒后即进入继续工作状态;省电模式中,冻结片内RAM,时钟停止振荡,所有功能停止,直至系统被硬件复位才可继续运行。基于AT89C2051具有诸多性能,因此,本系统设计采用AT89C205l作为控制器。
3.2 A/D转换器AD574A
本系统设计采用ADI公司生产的12位逐次逼近式A/D转换器AD574A。AD574A片内包含高精度的参考电压和时钟电路,具有外接元件数目少,功耗低等,以及具有自动校零和自动极性转换等功能,使其在无需任何外部电路和时钟信号的条件下,完成A/D转换,其转换时间为35μs。
3.3 掉电保护电路与看门狗电路
为了使系统工作可靠并保存设定数据,系统需要具有复位功能。掉电保护电路与系统复位电路利用MAX813L监控电路,在软件的配合下监控电源电压、CPU的工作状态。一旦出现死机、程序"跑飞"死循环或电源电压降到系统设定位值等故障时,就需要系统复位。MAX813L与AT89C205l的连接如图2所示。MR经过一个复位按钮接地。该监控电路的主要功能为:系统上电复位,电源上电时,当电源电压超过复位门限电压4.65 V时,复位端可输出200 ms的复位信号,系统复位;监测+5 V的电源:当+5 V电源正常时,RESET输出低电平,单片机正常工作;当+5 V电源电压降至+4.65 V以下时,RESET输出高电平,单片机复位;看门狗定时器被清零,WDO维持高电平:当程序"跑飞"或死机时,CPU不能在1.6s内给出"喂狗"信号,WDO跳变为低电平,由于MR端有一个内部250 mA的上拉电流,D导通,MR获得有效低电平,RESET输出复位脉冲,单片机复位,看门狗定时器被清零,WDO又恢复为高电平。手动复位:如果需要对系统进行手动复位,只要按下手动复位按钮,就能对系统进行有效复位。
3.4 HD7279简介
HD7279可支持64键盘和8位数码管动态显示,与传统的键盘显示器件8279相比,外围元件数目少,HD7279的CS、CLK、DATA、KEY信号线分别与AT89C205l的P1.O~P1-3端口相连,分时复用P1.0~P1.3端口线,大大节省CPU I/0端口资源;HD7279内部含有译码器,可直接接收BCD码或十六进制码,并具有两种译码方式。此外,还具有多种控制指令,如左移、右移、闪烁、消隐、段寻址等;具有自动消除按键抖动并识别按键代码的功能,软件编程时无需键盘的消抖动程序,而且HD7279A的控制指令使得软件编程更简单。故选用HD7279A作为驱动键盘矩阵。扫描键盘时,如果有按键按下,直接通过读键盘数据指令即可在LED上显示键入的键值,而无需通过AT89C205l端口线控制键盘输入。单片机接收键入的键值以控制所采样量。HD7279可广泛应用于微型控制器、智能仪表、控制面板和家用电器等。
某些应用场合需要监测温度,要求温度保持在一定范围内。例如农作物温床育苗在20℃~30℃,家禽孵化在37℃~40℃,菌种培育在23℃~28℃。而普通单向超温报警难以满足要求,因此,提出一种利用温度传感器与单片机应用系统的双向超温控温系统设计方案。该系统设计能显示超下限或超上限温度,且可预置超温点。
2 系统设计原理
图l所示为系统设计框图。首先通过键盘输入温度允许变化的上下限值,在正常情况下,应保持温度介于上下限值之间,当温度高于上限值时,则降温并报警;当温度低于下限值时,则升温并报警。
单片机控制器内部定时器每隔一定时间温度值采样一次,并产生一次定时中断。定时器中断服务程序主要对所采样的温度值与设定的温度上、下限值分别比较,判断是否达到温度上、下限值,从而决定是升温还是降温并报警,实现温度的双向自动控制,还可实现故障报警及通过键盘改变设定温度的上、下限值。
热敏电阻采用半导体感温元件,它具有负电阻温度特性,当温度升高时,电阻值减小。为此向热敏电阻施加恒定电流,测量电阻两端电压,然后通过测温公式求得温度:T=T0-KUT,其中T为被测温度,T0为与热敏电阻特性有关的温度参数,K为与热敏电阻特性有关的系数,UT为热敏电阻两端的电压。K和T0为常数测得热敏电阻两端的电压,可计算热敏电阻的环境温度。这样就将电阻随温度的变化转换为电压随温度的变化,该电压再经A/D转换器转换变成数字量,通过软件计算出温度值。
3 硬件电路
本系统设计是由AT89C2051单片机、AD574A、可编程键盘与接口器件8279、温度传感器、LED显示器、看门狗电路等组成。
3.1 AT89C2051单片机
AT89C205l是ATMEL公司生产的高性价比的8位单片机,该器件采用80C3l内核指令系统,与MCS一51完全兼容;内含2 KB的Flash可作为用户程序存储器和128字节的随机存取数据存储器(RAM);内含2个程序加密位,可防止程序非法读出,安全性好;其低压、高性能CMOS的8位机与MCS一5l指令和输出引脚相兼容,构成一个最小的测量系统;有20个引脚,15个双向输入/输出(I/O)端口,其中Pl是一个完整的8位双向I/O口,2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,1个模拟比较放大器;AT89C2051的时钟频率可为零,即具备可用软件设置的睡眠省电功能,系统的唤醒方式有RAM、定时/计数器、串行口和外中断口,系统唤醒后即进入继续工作状态;省电模式中,冻结片内RAM,时钟停止振荡,所有功能停止,直至系统被硬件复位才可继续运行。基于AT89C2051具有诸多性能,因此,本系统设计采用AT89C205l作为控制器。
3.2 A/D转换器AD574A
本系统设计采用ADI公司生产的12位逐次逼近式A/D转换器AD574A。AD574A片内包含高精度的参考电压和时钟电路,具有外接元件数目少,功耗低等,以及具有自动校零和自动极性转换等功能,使其在无需任何外部电路和时钟信号的条件下,完成A/D转换,其转换时间为35μs。
3.3 掉电保护电路与看门狗电路
为了使系统工作可靠并保存设定数据,系统需要具有复位功能。掉电保护电路与系统复位电路利用MAX813L监控电路,在软件的配合下监控电源电压、CPU的工作状态。一旦出现死机、程序"跑飞"死循环或电源电压降到系统设定位值等故障时,就需要系统复位。MAX813L与AT89C205l的连接如图2所示。MR经过一个复位按钮接地。该监控电路的主要功能为:系统上电复位,电源上电时,当电源电压超过复位门限电压4.65 V时,复位端可输出200 ms的复位信号,系统复位;监测+5 V的电源:当+5 V电源正常时,RESET输出低电平,单片机正常工作;当+5 V电源电压降至+4.65 V以下时,RESET输出高电平,单片机复位;看门狗定时器被清零,WDO维持高电平:当程序"跑飞"或死机时,CPU不能在1.6s内给出"喂狗"信号,WDO跳变为低电平,由于MR端有一个内部250 mA的上拉电流,D导通,MR获得有效低电平,RESET输出复位脉冲,单片机复位,看门狗定时器被清零,WDO又恢复为高电平。手动复位:如果需要对系统进行手动复位,只要按下手动复位按钮,就能对系统进行有效复位。
3.4 HD7279简介
HD7279可支持64键盘和8位数码管动态显示,与传统的键盘显示器件8279相比,外围元件数目少,HD7279的CS、CLK、DATA、KEY信号线分别与AT89C205l的P1.O~P1-3端口相连,分时复用P1.0~P1.3端口线,大大节省CPU I/0端口资源;HD7279内部含有译码器,可直接接收BCD码或十六进制码,并具有两种译码方式。此外,还具有多种控制指令,如左移、右移、闪烁、消隐、段寻址等;具有自动消除按键抖动并识别按键代码的功能,软件编程时无需键盘的消抖动程序,而且HD7279A的控制指令使得软件编程更简单。故选用HD7279A作为驱动键盘矩阵。扫描键盘时,如果有按键按下,直接通过读键盘数据指令即可在LED上显示键入的键值,而无需通过AT89C205l端口线控制键盘输入。单片机接收键入的键值以控制所采样量。HD7279可广泛应用于微型控制器、智能仪表、控制面板和家用电器等。
- 单片机控制步进电机驱动器工作原理(10-19)