曲全鹏
(郑州华信学院机电工程学院,河南郑州,451100)
在工业生产的很多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。采用单片机对温度进行控制不仅具有控制方便、简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大的提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的控制问题。
设计一个基于单片机的温度控制系统,能够对炉温进行控制。炉温可以在一定范围内由人工设定,并能在炉温变化时实现自动控制。若测量值高于温度设定范围,由单片机发出控制信号,经过驱动电路使加热器停止工作。当温度低于设定值时,单片机发出一个控制信号,启动加热器。通过继电器的反复开启和关闭,使炉温保持在设定的温度范围内。
1)温度设定范围为0~99℃,最小区分度为1℃,温度控制的误差≤1℃
2)能够用数码管精确显示当前实际温度值
3)按键控制:设置复位键、加一键、减一键
4)越限处理
本设计选择AT89S51作为主控芯片。AT89S51单片机的40个引脚中有2个专用于主电源引脚,2个外接晶振的引脚,4个控制或与其它电源复用的引脚,以及32条输入输出I/O引脚。
1)电源引脚Vcc和Vss
Vcc(40脚):接+5V电源正端;
Vss(20 脚):接 +5V 电源正端。
2)外接晶振引脚XTAL1和XTAL2
XTAL1(19脚):接外部石英晶体的一端。在单片机内部,它是一个反相放大器的输入端,这个放大器构成外部时钟时,对于CHMOS单片机,该引脚接地;对于CHOMS单片机,该引脚作为外部振荡信号的输入端。
XTAL2(18脚):接外部晶体的另一端。在单片机内部,接至片内振荡器的反相放大器的输出端。当采用外部时钟时,对于CHMOS单片机,该引脚作为外部振荡信号的输入端。对于CHMOS芯片,该引脚悬空不接。
3)控制信号或与其它电源复用引脚有RST/VPD、ALE/P、PSEN和EA/VPP等4种形式。
RST/VPD(9脚):RST即为 RESET,VPD为备用电源,所以该引脚为单片机的上电复位或掉电保护端。当单片机振荡器工作时,该引脚上出现持续两个机器周期的高电平,就可实现复位操作,使单片机复位到初始状态。
当VCC发生故障,降低到低电平规定值或掉电时,该引脚可接上备用电源VPD(+5V)为内部RAM供电,以保证RAM中的数据不丢失。
ALE/ P (30脚):当访问外部存储器时,ALE(允许地址锁存信号)以每机器周期两次的信号输出,用于锁存出现在P0口的地址信号。
PSEN(29脚):片外程序存储器读选通输出端,低电平有效。当从外部程序存储器读取指令或常数期间,每个机器周期PESN两次有效,以通过数据总线口读回指令或常数。当访问外部数据存储器期间,PESN信号将不出现。
EA/Vpp(31脚):EA为访问外部程序储器控制信号,低电平有效。当EA端保持高电平时,单片机访问片内程序存储器4KB(MS—52子系列为8KB)。若超出该范围时,自动转去执行外部程序存储器的程序。当EA端保持低电平时,无论片内有无程序存储器,均只访问外部程序存储器。对于片内含有EPROM的单片机,在EPROM编程期间,该引脚用于接21V的编程电源Vpp。
4)输入/输出(I/O)引脚P0口、P1口、P2口及P3口
P0口(39脚~22脚):这8条引脚有两种不同功能,分别适用于两种不同情况。第一种情况是89S51不带片外存储器,P0口可以作为通用I/O口使用,P0.0-P0.7用于传送CPU的输入/输出数据。第二种情况是89S51带片外存储器,P0.0-P0.7在CPU访问片外存储器时用于传送片外存储器的低8位地址,然后传送CPU对片外存储器的读写数据。
P1口(1脚~8脚):这8条引脚和P0口的8条引脚类似,P1.7为最高位,P1.0为最低位。当P1口作为通用I/O口使用时,P1.0-P1.7的功能和P0口的第一功能相同,也用于传送用户的输入和输出数据。
P2口(21脚~28脚):这组引脚的第一功能和上述两组引脚的第一功能相同,既它可以作为通用I/O口使用。它的第二功能和P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址。
P3口(10脚~17脚):P3.0~P3.7统称为P3口。它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的输入输出或第2功能。P3口的第2功能见表1。
表1 单片机P3口管脚第2功能Table 1 singlechip P3 mouth second pin function AT89S51单片机引脚图如图1所示
图1 单片机引脚图Figure 1 microcontroller pin diagram
图2 单片机控制模块电路Figure. 2 single chip control module circuit
控制模块是整个设计方案的核心,它控制了温度的采集、处理与显示、温度值的设定与温度越限时控制电路的启动。本控制模块由单片机AT89S51及其外围电路组成,电路如图2所示。
该电路采用按键加上电复位,S2为复位按键,复位按键按下后,复位端通过51Ω的小电阻与电源接通,迅速放电,使RST引脚为高电平,复位按键弹起后,电源通过8.2KΩ的电阻对10KμF的电容C5重新充电,RST引脚端出现复位正脉冲.
本设计采用内部时钟方式,利用芯片内部的振荡器,然后在引脚XTAL1和XTAL2两端跨接晶体振荡器,就构成了稳定的自激振荡器,发出的脉冲直接送入内部时钟电路,C6和C7的值通常选择为30pF左右,晶振Y1选择12MHz.为了减小寄生电容,更好地保证振荡器稳定、可靠地工作,振荡器电容应尽可能安装得与单片机引脚XTAL1和XTAL2靠近。
[1]李虹,温秀梅,高振天.基于MSP430单片机和DS18B20的小型测温系统[J].微计算机信息,2006,22(2):137-138
[2]王文海.单片机应用于实践项目化教程[M].北京:化学工业出版社,2010,23-38
[3]蔡美琴,毛敏.MCS-51系列单片机系统及其应用[M].北京:高等教育出版社,2009,28-46
[4]张齐,杜群贵.单片机应用系统设计技术[M].北京:电子工业出版社2007,32-35