基于AT89C51的温度控制系统的设计外文翻译资料
2023-06-15 17:07:23
Design of the Temperature Control System Based on AT89C51
ABSTRACT
The principle and functions of the temperature control system based on micro controller AT89C51 are studied, and the temperature measurement unit consists of the 1-Wire bus digital temperature sensor DS18B20. The system can be expected to detect the preset temperature, display time and save monitoring data. An alarm will be given by system if the temperature exceeds the upper and lower limit value of the temperature which can be set discretionarily and then automatic control is achieved,thus the temperature is achieved monitoring intelligently within a certain range.Basing on principle of the system, it is easy to make a variety of other non-linear control systems so long as the software design is reasonably changed. The system has been proved to be accurate, reliable and satisfied through field practice.
KEYWORDS: AT89C51; micro controller; DS18B20; temperature
1INTRODUCTION
Temperature is a very important parameter in human life. In the modem society, temperature control (TC) is not only used in industrial production, but also widely used in other fields. With the improvement of the life quality, we can find the TC appliance in hotels, factories and home as well. And the trend that TC will better serve the whole society, so it is of great significance to measure and control the temperature. Based on the AT89C51 and temperature sensor DS18B20, this system controls the condition temperature intelligently. The temperature can be set discretionarily within a certain range. The system can show the time on LCD, and save monitoring data; and automatically control the temperature when the condition temperature exceeds the upper and lower limit value. By doing so it is to keep the temperature unchanged. The system is of high anti-jamming, high control precision and flexible design; it also fits the rugged environment. It is mainly used in peoples life to improve the quality of the work and life. It is also versatile, so that it can be convenient to extend the use of the system. So the design is of profound importance. The general design, hardware design and software design of the system are covered.
1.1Introduction
The 8-bit AT89C51 CHMOS microcontrollers are designed to handle high-speed calculations and fast input/output operations. MCS 51 microcontrollers are typically used for high-speed event control systems. Commercial applications include modems,motor-control systems, printers, photocopiers, air conditioner control systems, disk drives, and medical instruments. The automotive industry use MCS 51 microcontrollers in engine-control systems, airbags, suspension systems, and antilock braking systems (ABS). The AT89C51 is especially well suited to applications that benefit from its processing speed and enhanced on-chip peripheral functions set, such as automotive power-train control, vehicle dynamic suspension, antilock braking, and stability control applications. Because of these critical applications, the market requires a reliable cost-effective controller with a low interrupt latency response, ability to service the high number of time and event driven integrated peripherals needed in real time applications, and a CPU with above average processing power in a single package. The financial and legal risk of having devices that operate unpredictably is very high. Once in the market, particularly in mission critical applications such as an autopilot or anti-lock braking system, mistakes are financially prohibitive. Redesign costs can run as high as a S500K, much more if the fix means 2 back annotating it across a product family that share the same core and/or peripheral design flaw. In addition, field replacements of components is extremely expensive, as the devices are typically sealed in modules with a total value several times that of the component, lb mitigate these problems, it is essential that comprehensive testing of the controllers be carried out at both the component level and system level under worst case environmental and voltage conditions. This complete and thorough validation necessitates not only a well-defined process but also a proper environment and tools to facilitate and execute the mission successfully. Intel Chandler Platform Engineering group provides post silicon system validation (SV) of various micro-controllers and processors. The system validation process can be broken into three major parts. The type of the device and its application requirements determine which types of testing are performed on the device.
1.2The AT89C51 provides the following standard features
4Kbytes of Flash, 128 bytes of RAM, 32 I/O lines, two 16-bittimer/counters, a five vector two-level interrupt architecture, a full duple ser-ial port, on-chip oscillator and clock circuitry. In addition, the AT89C51 is designed with static logic for operation down to zero frequency and supports two software selectable power saving modes. The Idle Mode stops the CPU while allowing the RAM, (imer/counters, serial port and interrupt sys -tem to continue functioning. The Power-down Mode saves the RAM contents but freezes the oscil - lator disabling all other chip functions until the next hardware reset.
1.3Pin Description
VCC Supply voltage.
GND Ground.
Port 0:Port 0 is an 8-bit open-drain bi-directional I/O port. As an output port,each pin can sink eight TTL inputs. When 1 s are written to port 0 pins, the pins can be used as high impedance inputs. Port 0 may also be configured to be the multiplexed low order address/data bus during accesses to external program and data memory. In this mode P0 has internal pull ups. Port 0 also receives the code bytes during Flash programming, and outputs the code bytes during program verification. External pull ups are required during program verification.
Port 1:Port 1 is an 8-bit bi-directional I/O port with internal pu
剩余内容已隐藏,支付完成后下载完整资料
基于AT89C51的温度控制系统的设计
摘要
研究了基于微控制器AT89C51温度控制系统的原理和功能,该温度测量单元由单总线数字温度传感器DS18B20构成。系统可以检测预设的温度、显示时间,保存监控数据。如果温度超过任意设置的上限和下限值,系统就会发出报警,然后实现自动控制,从而在一定范围内进行温度智能监测。根据系统原理,只要合理地改变软件设计,就可以很容易地制作出各种其他的非线性控制系统。经现场实践证明,该系统准确、可靠、满意。
关键词:AT89C51;微控制器;DS18B20;温度
1导言
温度是人们日常生活中很重要的参数。在现代社会中,温度控制(TC)不仅用于工业生产,还广泛应用于其它领域。随着生活质量的提高,我们可以在宾馆,工厂和家里找到温度控制的应用。并且温度控制的发展趋势将为整个社会提供更好的服务,因此它对于测量和控制温度具有十分重大的意义。基于AT89C51单片机和温度传感器DS18B20,系统可以实现环境温度智能控制。温度可以任意设定在一定范围内。该系统可以在液晶显示器上显示时间,保存监控数据,当环境温度超过上限和下限的值时,可以自动地控制温度。通过这种方式可以保证环境温度不变。该系统具有抗干扰能力强、控制精度高、设计灵活、适应恶劣环境等特点。它主要用于提高人们日常生活和工作的质量。它的用途是多方面的,所以用它来拓展其他的系统也是十分方便的。因此,本设计具有深远的意义,本介绍包括了系统的总体设计、硬件设计和软件设计。
1.1介绍
8位AT89C51 CHMOS微控制器被设计用来处理高速计算和快速输入/输出。MCS51微控制器通常用于高速事件控制系统。商业应用包括调制解调器,马达控制系统,打印机,复印机,空调控制系统,磁盘驱动器和医疗器械。汽车工业在发动机控制系统、安全气囊、悬挂系统和防抱死制动系统(ABS)中使用 MCS 51微控制器。AT89C51特别适用于处理速度快、片上外围功能增强的应用,如汽车动力传动控制、车辆动力悬挂、防抱死制动和稳定性控制应用。由于这些关键应用,市场需要一个可靠、经济高效的控制器,具有低中断延迟响应,能够为实时应用中所需的大量时间和事件驱动的集成外围设备提供服务,,以及一个单一封装中具有高于平均处理能力的CPU。拥有不可预测的操作设备的金融和法律风险是非常高的。一旦进入市场,尤其是在自动驾驶仪或防抱死制动系统等关键任务应用中,财务上出现错误是可能的。重新设计的费用可能高达500K美元,如果修复意味着在共享相同核心和/或外围设备设计缺陷的产品系列中对其进行2次注释,则成本会更高。另外,部件的替代品是极其昂贵的,因为设备通常密封在模块中,其总价值是组件的数倍,。为了缓和这些问题,重要的是,控制器的全面测试应在部件级和系统级的最恶劣环境和电压条件下进行。这种完整和彻底的验证不仅需要一个定义明确的过程,还需要一个适当的环境和工具来促进和成功执行任务。I英特尔钱德勒平台工程集团提供各种微控制器和处理器的后硅系统验证(SV)。这种系统的验证处理可以被分解为三个主要部分。设备类型及其应用要求决定了在设备上执行哪种类型的测试。
1.2AT89C51提供以下标准功能
4K字节的闪存,128字节的RAM, 32条I/O □线,两个16位定时/计数器,五向量两级中断结构,全双工串行端口、片上振荡器和时钟电路。此外,AT89C51采用静态逻辑设计,可在零频率下运行,并支持两种软件选择的节能模式。空闲模式停止CPU,同时允许RAM(内存/计数器、串行端口和中断系统)继续工作。断电模式保存RAM的内容,但冻结振荡器,禁用所有其他芯片功能,直到下一个硬件重置。
1.3引脚功能说明
Vcc:电源电压
GND:地
P0口: P0 口是一个8位开放式漏极双向I/O端口。作为一个输出端口,每个引脚可以接收八个TTL输入。当1s 写入端口0引脚时,这些引脚可用作高阻抗输入。P0口也可以被配置为在访问外部程序和数据存储器期间的多路复用的低阶地址/数据总线。P0具有内部上拉功能。在Flash编程时,P0口接受指令字节,并在程序验证期间输出指令字节。程序验证期间需要外部上拉。
P1口:P1是一个带内部上拉功能的8位双向I/O口, P1口输出缓冲区可以接收/接收四个TTL输入。对端口写1s,通过内部的上拉电阻把端口拉到高甩平,此时可作输入口。作为输入口使用时,因为内部存在上拉电阻,外部拉低的端口1引脚将产生电流(IIL)。Flash编程和程序校验期间,P1接受低8位地址。
P2口:P2口是一个带有内部上拉功能的8位双向I/O 端口,P2输出缓冲区可以接收/发送四个TTL输入。对端口写1s,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作为输入口使用时,因为内部存在上拉电阻,外部拉低的端口2引脚将产生电流(IIL)。端口2在从外部程序内存获取期间,端口2发出高阶地址字节,由于内部上拉,外部拉的引脚将产生电流(IIL)。端口2在从外部程序存储器取数期间和访问使用16位地址的外部数据存储器期间发出高阶地址字节(MOVX@DPTR)。在这种应用中,当发出1s时,它使用强大的内部上拉。在访问使用8位地址(MOVX@RI)的外部数据存储器时,端口2会发出P2特殊功能寄存器的内容。在闪存编程和验证期间,端口2还会接收高阶地址位和一些控制信号。
P3 口:P3是一个带有内部上拉功能的8位双向I/O 端口,P3输出缓冲器可以接收/接收四个TTL输入当1s写入端口3引脚时,它们被内部上拉拉高,可用作输入。作为输入,端口3 由于上拉,外部被拉低的引脚将产生电流(IIL)。
端口3还具有AT89C51的各种特殊功能,如下所示:
RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:地址锁存启用输出脉冲,用于在访问外部存储器期间锁存地址的低字节。该引脚也是闪存编程期间的程序脉冲输入(PROG)。在正常操作中,ALE以1/6振荡器频率的恒定速率发射,可用于外部定时或时钟目的。然而,请注意,每次访问外部数据存储器时,跳过一个ALE脉冲。如果需要,可以通过设置SFR位置8EH的位0来禁用ALE操作。设置位后,ALE仅在MOVX或MOVC指令期间激活。否则,销会被微弱地拉高。如果微控制器处于外部执行模式,则设置ALE禁用位无效。
PSEN:程序存储启用是对外部程序内存的读取频闪器。当AT89C51从外部程序存储器执行代码时,PSEN在每次机器周期中被激活两次,除了在每次访问外部数据存储器时会跳过两次PSEN激活。
EA/VPP:外部访问启用。欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH), EA端必须保持低电平(接地)。需注意的是:如果锁定位1被编程,复位时内部会锁存EA端状态。如EA端为高电平,CPU则执行内部程序存储器中的指令。Flash存储器编程时,此引脚接收12伏编程期间需要12伏VPP的编程电压(VPP)。
XTAL1:振荡器反相放大器及内部时钟发生器的输入端。
XTAL2:振荡器反相放大器的输出端。振荡器特性XTAL1和XTAL2分别是反相放大器的输入和输出,可配置为用作片上振荡器,如图1所示。可以使用石英晶体或陶瓷谐振器。要从外部时钟源驱动设备,在驱动XTAL1时,XTAL2应保持未连接状态,如图2所示。外部时钟信号的占空比没有要求,因为内部时钟电路的输入是通过一个除以二的触发器,但必须遵守最小和最大电压高和低时间规范。空闲模式在空闲模式下,CPU将自己置于睡眠状态,同时所有片上外围设备保持活动状态。该模式由软件调用。在此模式下,片上RAM和所有特殊功能寄存器的内容保持不变。空闲模式可以通过任何启用的中断或硬件重置来终止。应该注意的是,当空闲被硬件重置终止时,设备通常会从停止的位置恢复程序执行,直到内部重置算法控制前的两个机器周期。在这种情况下,片上硬件会禁止访问内部RAM,但不会禁止访问端口引脚。为了消除在通过重置终止空闲时意外写入端口引脚的可能性,调用空闲的指令后面的指令不应是写入端口引脚或外部内存的指令。
掉电模式:
在掉电模式下,振荡器停止,调用掉电的指令是最后执行的指令。片上RAM和特殊功能寄存器保留其值,直到断电模式终止。断电的唯一出路是硬件重置。重置重新定义SFR,但不改变片上RAM。在VCC恢复到其正常工作水平之前,不应激活重置,并且必须保持激活状态足够长的时间,以允许振荡器重新启动并稳定。AT89C51代码存储器阵列在任一编程模式下逐字节编程。要在片上闪存中编程任何非空字节,必须使用芯片擦除模式擦除整个存储器。
2编程方法
在对AT89C51编程之前,应根据闪存编程模式表以及图3和图4设置地址、数据和控制信号。要对AT89C51进行编程,请执行以下步骤。1.在地址行上输入所需的内存位置。2.在数据行上输入适当的数据字节。3.激活控制信号的正确组合。4.对于高压编程模式,将EA/VPP升高至12V。5.脉冲ALE/PROG一次,在闪存阵列或锁位中编程一个字节。字节写入周期是自动计时的,通常不超过1.5毫秒。重复步骤1到5,更改整个阵列的地址和数据,或直到到达目标文件的末尾。数据轮询:AT89C51具有数据轮询功能,以指示写入周期的结束。在写入周期中,尝试读取最后写入的字节将导致PO上写入数据的补码。PO.7一旦写入周期完成,所有输出上的真实数据都有效,下一个周期可能开始。数据轮询可以在写入周期启动后的任何时间开始。
2.1准备/忙碌
字节编程的进度也可以通过RDY/BSY输出信号进行监控。P3.4在编程过程中ALE变高后被拉低,以表示忙。编程完成后,P3.4再次拉高,以指示就绪。
程序校验:如果锁位LB1和LB2尚未编程,可通过地址和数据线读回编程的代码数据以进行验证。锁位无法直接验证。通过观察锁位的功能是否已启用来验证锁位。
2.2芯片擦除
通过使用控制信号的适当组合,并将ALE/PROG保持在低位10 ms,以电气方式擦除整个闪存阵列。使用allT写入代码阵列。在重新编程代码存储器之前,必须执行芯片擦除操作。
2.3读片内签名字节
签名字节的读取程序与位置030H、031H和032H的正常验证程序相同,但P3.6和P3.7除外,必须被拉到逻辑低点。返回的值如下。
(030H)=1EH声明产品由ATMEL公司制造。
(031H)=51H声明为89c51单片机。
(032H)=FFH声明为12V编程电压。
(032H)=05H声明为5V编程电压。
2.4编程接口
通过使用适当的控制信号组合,可以写入闪存阵列中的每个代码字节,并擦除整个阵列。写入操作周期是自动计时的,一旦启动,将自动计时至完成。微机接口在两种形式之间转换信息。在微型计算机外部,电子系统处理的信息以物理信号的形式存在,但在程序内部,它是用数字表示的。任何接口的功能都可以分解为若干操作,这些操作以某种方式修改数据,因此外部表单和内部表单之间的转换过程可以分为若干步骤进行。模数转换器(ADC)用于将连续可变信号转换为相应的数字形式,该数字形式可以采用固定数量的可能二进制值中的任何一种。如果传感器的输出不连续变化,则不需要ADC。在这种情况下,信号调节部分必须将输入信号转换成一种形式,这种形式可以直接连接到接口的下一部分,即微型计算机本身的输入/输出部分。输出接口采用类似的形式,明显的区别在于这里的信息流方向相反;它从程序传递到外部世界。在这种情况下,程序可以调用一个输出子程序,该子程序监督接口的操作,并执行fbr数模转换器(DAC)可能需要的缩放数。该子程序将信息依次传递给输出设备,输出设备产生相应的电信号,该电信号可以使用DAC转换为模拟形式。最后,将信号调节(通常放大)为合适的fbr形式,以操作致动器。微型计算机电路中使用的信号几乎总是太小,无法直接连接到外部世界”,必须使用某种接口将其转换为更合适的形式。接口电路部分的设计是使用微机的工程师所面临最重要的任务之一。我们已经了解到微机中,信号以离散的位形式表示。当微机要与只有打开或关闭操作的设备相连时,这种数字形式是最有用的,这里每一位都可表示一开关或执行器的状态。为了解决实际问题,一个单片机不仅包括CPU,程序和数据存储器,另外,它必须含有通过CPU访问外部信息的硬件。一旦CPU收集信息并处理数据,它还必须能够对外部世界的某些部分产生影响。这些被称为外围设备的硬件设备是CPU对外的窗口。
微控制器上最基本的外设形式是通用170端口。每个I/O引脚都可以用作输入或输出。在程序初始化阶段,通过设置或清除相应数据方向寄存器中的相应位来确定每个管脚的功能。通过使用CPU指令,可以将每个输出管脚驱动到逻辑1或逻辑0,以查看(或读取)管脚由CPU使用程序指令。微控制器上包含某种类型的串行单元,以允许CPU与外部设备进行位串行通信。使用位串行格式而不是位并行格式需要更少的I/O引脚来执行通信功能,这使其成本更低,但速度较慢。串行传输可同步或异步执行。
3系统总体设计
TC的硬件框图如图1所示。系统硬件包括微控制器、温度检测电路、键盘控制电路、时钟电路、显示、报警、驱动电路和外部RAM。基于AT89C51,DS18B20将检测到的温度信号转换为数字信号。并将信号发送至微控制器进行处理。最后,温度值显示在LCD12232F上。这些步骤用于实现温度检测。使用键
剩余内容已隐藏,支付完成后下载完整资料
资料编号:[604022],资料为PDF文档或Word文档,PDF文档可免费转换为Word