基于51单片机的电热水器控制系统的设计_毕业设计论文 下载本文

水器加热开关,液晶显示电路,报警电路以及复位电路。具体硬件框图如图2.1所示

温度采集模块 键盘 复位电路 实时时钟 晶振 电源 微 控 制 器 模 块 加热开关 液晶显示电路 功能指示电路 报警电路

图2.1 系统硬件框图 2.4方案论证

按照前面的课题要求,我们首先确定运用单片机AT89S52作为本次设计的核心部件。

在温度采集方面有多种选择,常见的温度传感器分为以下几种:热敏电阻式温度传感器、热电阻式温度传感器、热电偶式温度传感器、模拟集成温度传感器、智能温度传感器。本次设计原本选择的是pt1000铂电阻温度传感器,其作为高精度的温度敏感元件,具有测温范围大,测温精度高,稳定性好,示值复现性高与耐氧化等特点,常被用作0℃~926℃温度区间内的标准温度计,其特性曲线为:-200°C~0°C时,Rt=R0[1+At+Bt2+c(t-100)t3];0°C~650°C时,Rt=R0[1+At+Bt2]。(Rt为温度为t°C时热电阻的阻值,R0为0°C时的阻值,A、B、C为实验测定的常数,A=3.90802×10-2,B=5.802×10-7,C=-4.22×10-7)本系统使用的R0为1000Ω。而要将pt1000作为本次设计的元件,还需要语气配套的传感器测量电路与放大电路两部分,具体电路如图2.2所示。[12]

但是在实际购买时发现pt1000电阻由于价格过高,所以在最终设计中并没有采用pt1000作为测温元件来使用,同时,在同组同学推荐下采用了另一种集成式温度传感器DS18B20作为测温元件,DS18B20虽然测温范围比pt1000小,但是在满足本设计要求的基础上,其价格不到pt1000的一半,并且其硬件电路由于舍去了普通传感器所需附带的A/D电路的设计,所以其硬件电路的设计更加简单,所以采用了DS18B20作为最终设计中的测温元件。[11]

图2.2 传感器放大电路 本次设计的要求是选择51单片机作为核心的处理器,但是市场上做51单片机的厂商有很多家,其中比较著名的有STC公司、MICROCHIP公司、德州仪器公司、Intel公司、ATMEL公司、Philips公司、Siemens公司。[9]

其中STC公司的STC单片机主要是基于8051内核,是新一代增强型单片机,指令代码完全兼容传统8051,速度快8~12倍,带ADC,4路PWM,双串口,有全球唯一ID号,加密性好,抗干扰强。

还有MICROCHIP公司的PIC单片机,其突出的特点是体积小,功耗低,精简指令集,抗干扰性好,可靠性高,有较强的模拟接口,代码保密性好,大部分芯片有其兼容的FLASH程序存储器的芯片.

PHILIPS公司的PHLIPIS 51LPC系列单片机是基于80C51内核的单片机,嵌入了掉电检测、模拟以及片内RC振荡器等功能,这使51LPC在高集成度、低成本、低功耗的应用设计中可以满足多方面的性能要求。

ATMEl公司的8位单片机有AT89、AT90两个系列,AT89系列是8位Flash单片机,与8051系列单片机相兼容,静态时钟模式;AT90系列单片机是增强RISC结构、全静态工作方式、内载在线可编程Flash的单片机,也叫AVR单片机。

而作为第一次使用单片机做独立设计,我选用的是ATMEL公司的AT89S52单片机,AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 储存器。使用Atmel 公司高密度非易失性储存器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序编程器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52在众多嵌入式控制应用系统中得到广泛应用。

众所周知,单片机的程序写入过程不是一帆风顺的,其常常需要多次的写入与调试的过程,这里采用AT89S52的优点就是AT89S52额外添加了8k在系统可编程(即ISP)Flash存储器,特意设计为方便在线编程,使得其下载线电路简单,且可实现并行和或者串行模式的在线编程,使得每一次的程序下载与调试不必将单片机从PCB板上拔下,这样不仅使程序调试变得更加方便,其次还会大大延长单片机与PCB板的寿命。

由于本次设计需要有定时开关机的功能,而单片机其内部时钟只能作为其内部程序运行的基准而不能满足设计的要求,所以外接了一个时钟芯片来满足本次设计的要求。[10]

市面上的主流的时钟芯片有DS1302、 DS1307、PCF8485、SB2068等等。这些芯片结构简单,价格低廉,而实时时钟电路DS1302是DALLAS公司的一种具有涓细电流充电能力的电路,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的充电功能,并且可以关闭充电功能。采用普通32.768kHz晶振。

在显示方面采用一个液晶显示屏来显示主要的参数,液晶显示屏相对于LED数码管虽然编程方面更加繁琐,但是相对的其还具有更多的优点,其除了可以顺利的显示数字之外,还可以对显示的数字进行简单的注释,使得人机操作界面变得更加友好,其次在有关网站上也可以顺利的查找到有关DS1302的信号显示程序,本次显示界面除了有温度的显示还需要有时间的显示,定时操作信号的显示,采用LCD显示屏使操作显得更加方便。[6]

在键盘的选择上,有两种选择:一是采用独立式按键键盘,第二种是采用矩阵式键盘。矩阵式一般键盘采用4*4式键盘,而本次设计中并不需要如此多的功能按键,所以本次设计,选择了独立式按键,本次总共使用了6个按键。其中按键1的功能是系统的复位,按键2的功能是实现实时时钟的时间校准功能,按键3实现的功能是实现烧水温度的设置功能,按键4实现的功能是烧水定时功能的设置,按键5与按键6分别是“+”“—”功能键。

然后本次设计中还加入了一个发光二极管与蜂鸣器。

发光二极管用来显示继电器的闭合状况,使得加热电路的通断能够被更直接的观察。

而加入蜂鸣器的作用是在进行某项操作时进行指示作用,还有在达到烧水温度或者定时时间到的时候起到报警作用。

第三章 主要元件介绍

3.1单片机系统模块介绍

AT89S52是一种低功耗、高性能CMOS 8位微控制器,具有8K在线可编程Flash 存储器,使用Atmel公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。片上Flash允许程序存储器在线可编程,亦适于常规编程器。在一个芯片上,拥有灵巧的8 位CPU 和在线可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。[1]

AT89S52具有以下标准功能:8K字节的Flash,256字节的RAM,32 位I/O 口,看门狗定时器,2个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52 可降至0Hz 静态逻辑操作,支持2种软件,可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作;掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

3.1.1 AT89S52单片机的主要性能

??与MCS-51单片机产品兼容 ??8K字节在系统可编程Flash存储器 ??1000次擦写周期 ??全静态操作:0Hz~33Hz ??三级加密程序存储器 ??32个可编程I/O口线 ??三个16位定时器/计数器 ??八个中断源

??全双工UART串行通道 ??低功耗空闲和掉电模式 ??掉电后中断可唤醒 ??看门狗定时器 ??双数据指针 ??掉电标识符

3.1.2 AT89S52管脚功能说明

AT89S52引脚如图3.1所示。

图3.1 AT89S52引脚结构图

VCC :电源 GND : 接地

P0口: P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用,在这种模式下,P0具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节,在程序校验时,输出指令字节。程序校验时,P0口需要外部上拉电阻。

表3.1 P1口第二功能

P1口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,P1 输出缓冲器能驱动4个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的