本论文中使用了4个数码管,其中前三位使用动态扫描显示实测温度,在设置加热温度的时候,三个数码管是闪烁,以提示目前处在温度设置状态。第四位数码管静态显示符号“℃”[9]。
2.3.2 显示器与单片机的接口电路
本设计利用三位共阳数码管和一位共阳极数码管分别作为动态显示器和静态显示器。三位共阳数码管扫描显示电路将被测量结果显示出来,它与单片机的连接方式如图6所示,P1.0口用来控制显示数字,P1.2口用来循环扫描四个数码管。而一位共阳极数码管则显示温度符号℃,设计中电路图如图7所示。
图6 动态显示电路接口电路图 图7 静态显示电路图
2.4 键盘电路设计
在系统设计中添加了键盘,主要用作系统开关、设定系统报警温度值。键盘电路的工作原理是通过按下按键后产生的高低电平送入单片机,从而使单片机发出控制信号 [10]。键盘电路如图8所示。
图8 键盘电路
图8中通过I/0口连接。将每个按钮的一端接到单片机的I/O口,另一端接地,如图,本设计中三个按钮分别接到单片机的P3.0、P3.1、P1.7口上。而各个按钮都接到一个与非门上,当有任何一个按钮按下时,都会使与非门输出为高电平,从而引起单片机的中断,它的好处是不用在主程序中持续地循环查询,如果有键按下,单片机再去做相应的处理。
2.5 控制电路设计
通过继电器电路将控制系统与负载连接在一起,从而使控制系统能够控制负载的动作。继电器一般有两种电路,即为低压控制电路和高压控制电路,本设计采用低压控制方式控制风扇进行工作。通过风扇的工作使环境温度降低,从而达到降温的效果。电路图如图9所示。
图9 控制电路
2.6 报警电路
在本系统中,为了提示操作人员温度超值,设计了报警系统,以便观察系统状态。其原理就是把传感器采集的数据送入单片机进行数据处理,然后将该参数与设置值进行比较,如果高于设置值1度(或低于设置数1度)则进行报警,否则就作为采集的正常值,进行显示。报警电路如图10所示。
图10 报警电路
图10中LED3为报警灯起到报警作用。当所测温度没有超出正常范围时,单片机P3.5脚输出高电平,Q1截止,LED截止,LED灯处于熄灭状态;反之,单片机P3.5引脚输出为低电平,Q1导通,LED导通,LED灯处于亮状态,起到了报警作用。
3. 软件设计
由于本设计整个程序工程量比较大,所以本文采用模块化设计的方法来设计软件部分,即为数据采集模块、数据处理模块及实时显示模块。其中数据处理模块主要完成数据的接收与处理。数据经计算处理之后送往显示模块显示。若数据超过既定的数值时,系统自动报警,单片机发出控制信号,继电器导通,风扇打开。
整个系统的软件设计部分重点介绍设计主程序、LED显示子程序、温度测量子程序。具体设计流程如图11~图13所示。
图11主程序设计流程图
图 12 LCD显示流程图图13 温度测量程序流程图
4. 调试与分析
(1)程序调试
控制部分采用protues开发软件进行相关设计及调试,其具体步骤如下:
○1打开protues开发软件,新建工程。
○2编辑程序并添加到工程中,选择目标器件,进行相关设置。 AT89C2051单片机温度控制器设计+电路图+流程图(5):http://www.751com.cn/zidonghua/lunwen_1528.html