基于单片机的温度控制系统设计_secret_第1页
基于单片机的温度控制系统设计_secret_第2页
基于单片机的温度控制系统设计_secret_第3页
基于单片机的温度控制系统设计_secret_第4页
基于单片机的温度控制系统设计_secret_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 温度控制系统温度控制系统摘摘 要要:本文介绍了一种基于 8086 微处理器的温度控制系统,采用温度传感器 AD590采集温度数据,用 CPU 控制温度值稳定在预设温度。当温度低于预设温度值时系统启动电加热器,当这个温度高于预设温度值时断开电加热器。系统操作简便、自动化程度高、扩展方便且具有良好的人机交互的能力。该系统通过实验,取得了较为满意的控制效果。可应用在一些精度要求不太高的系统中。为了降低整个系统的成本,在满足性能的要求下,选择低成本器件,简化系统设计。关键词:关键词:微处理器 温度传感器 A/D 转换器 控制系统Abstract: This paper introduces a ki

2、nd of 8086 microprocessor based on the temperature measurement and control system, adopting temperature sensor AD590 collection temperature data, using CPU control temperature stability in the preset temperature. When the temperature is below the preset temperature when system startup electric heate

3、r, when the temperature higher than the preset temperature when electric heater disconnection. System simple operation, high automation degree, expansion easier and has good human-machine interaction skills. The system through experiment and achieved satisfactory control effect. Can be used in some

4、precision less demanding system. In order to reduce the cost of the whole system, and to meet the request of the performance, choose low-cost devices, simplify system design. Keywords: microprocessor temperature sensor A/D converter control system 第 I 页目录目录1 前言前言.12 2 整体方案设计整体方案设计.22.1 方案论证.22.2 系统硬

5、件选择和设计.33 3 单元模块设计单元模块设计.43.1 温度控制与检测系统.43.1.1 温度控制.43.1.2 温度测量.53.2 8086 微处理器及其体系结构.53.3 8255A 并行 IO 接口.73.4 ADC0809 概述 .83.5 ADC0809 与 8255 的连接 .103.6 8279 的功能介绍 .113.7 LED 显示器 .124 4 系统工作原理及软件设计系统工作原理及软件设计.144.1 系统工作原理.144.2 系统软件设计.144.3 系统流程图.145.5.系统调试系统调试.186 6 结论结论.207 7 参考文献参考文献.21附录附录 1 1:电

6、路总图:电路总图.22附录附录 2 2:程序:程序.23 第 1 页1 前言前言温度是表征物体冷热程度的物理量,温度传感器是通过物体随温度变化而改变某种特性来间接测量的。不少材料、元件的特性都随温度的变化而变化,所以能作温度传感器的材料相当多。进入 21 世纪后,智能温度传感器正朝着高精度、多功能、总线标准化、高可靠性及安全性、开发虚拟传感器和网络传感器、研制单片测温系统等高科技的方向迅速发展。近年来,温度控制系统不仅在工业设计、工程建设中应用广泛,而且在人们的日常生活中也常常需要用到温度控制。大到大型钢铁厂、化工厂等,小到酒店、温室、家电等。温度监控的应用随处可见,随着人们生活质量的提高及温

7、度控制技术的成熟,温度控制将更好的服务于社会。随着电子技术的发展,特别是大规模集成电路的产生,给人们的生活带来了根本性的变化,如果说微型计算机的出现使现代的科学研究得到了质的飞跃,那么微型计算机控制技术的出现则是给现代工业控制测控领域带来了一次新的革命。目前,微处理器 8086 在工业控制系统诸多领域得到了广泛的应用,由于它具有极好的稳定性,更快和更准确的运算精度。温度控制系统在现代工业设计、工程建设及日常生活中的应用越来越广泛,早期的温度控制主要应用于工厂中,例如钢铁的水溶温度控制,不同等级的钢铁要通过不同温度的铁水来实现,这样就可能有效的利用温度控制来掌握所需要的产品了。目前,微机检测系统

8、的发展非常迅速,应用也极为广泛,它由于体积小、功能强、性能稳定、价格低廉等优点,使其在工业控制系统诸多领域得到了极为广泛的应用。在此基础上发展起来的智能仪器无论是在测量的准确度、灵敏度、可靠性、自动化程度、应用功能等方面或在解决测试技术问题的深度及广度方面都有了巨大的发展,以一种崭新的面貌展现在人们的面前。随着大规模集成电路及计算机技术的迅速发展,以及人工智能在测试技术方面的广泛运用,智能仪器有了更大的发展。温度测试仪器的智能化已是现代仪器仪表发展的主流方向。 第 2 页2 2 整体方案设计整体方案设计本设计的整体思路是:采用温度传感器采集温度数据,用 CPU 控制温度值稳定在预设温度。当温度

9、低于预设温度值时系统启动电加热器,当这个温度高于预设温度值时断开电加热器。数码管上输出的数字就是对应于所测量的实际温度。2.12.1 方案论证方案论证设计中采用了两个方案,具体的方案见方案一和方案二。方案一: 采用铂电阻温度传感器的电阻与温度的关系是非线性的,用电桥实现温度升高引起的电阻变化对应于电压的变化。经 A/D 转换器后,送入锁存器锁存,在经译码器输出后,再在数码管上显示,由于 74LS373 具有锁存功能就能实现四位的温度显示。由于铂电阻与温度的关系是非线性的,因此输出的结果测试精度较低,并且不能达到我们对温度控制的要求。图 2.1 测温整体方案一框图方案二: 设计一种温度控制方法将

10、温度控制到某一设定值,并保持稳定。同时还可以根据实际需要重新设置温度并进行重新控制调节,使温度达到一新的设定值,并保持稳定。这里的重新设置和控制可以进行无限多次,当然这个设置值得在某一最大值范围之内,这里把最大值设为 68。当设置温度大于 68时,系统就会报错并退出系统。电桥测温电路放大电路A/D 转换电路锁存器 74LS373译码器 7448LED 数码显示 第 3 页图 2.2 系统原理框图经过对以上二种方案得分析、比较,我觉得方案二更加完善、功能更加齐全,对于本次设计更加具有可实行性,并且能够达到我们所预期的目的,于是我采用方案二作为本次设计的总体方案。2.22.2 系统硬件选择和设计系

11、统硬件选择和设计1、系统扩展接口的选择 本次设计采用的是 8086 微处理器,选择 8255A 可编程并行接口作为系统的扩展接口,8255A 的通用性强,适应灵活,通过它 CPU 可直接与外设相连接。2、温度传感器与 AD 转换器的选择本系统选用温度传感器 AD590 构成测温系统。AD590 是一种电压输入、电流输出型集成温度传感器,测温范围为-55150,非线性误差在0。30,其输出电流与温度成正比,温度没升高 1K(K 为开尔文温度) ,输出电流就增加 1uA。其输出电流 I=(273+T)uA。本设计中串联电阻的阻值选用 2K,所以输出电压 V+=(2730 + 10T)MV.另外,为

12、满足系统输入模拟量进行处理的功能,对其再扩展一片 ADC0809,以进行模拟数字量转化。3、显示接口芯片为满足本次设计温度显示的需要,我们选择了 8279 芯片,INTEL8279 芯片是一种通用的可编程的键盘、显示接口器件,单个芯片就能完成键盘键入和 LED 显示控制两种功能。备注:系统硬件接线应尽量以插接形式连接,这样便于多用途使用和故障的检查和排除。电压跟随器运算放大电路温度传感器AD 转换器微处理器加热控制电路报警译码显示 第 4 页3 3 单元模块设计单元模块设计本系统采用的是 8086 微处理器,选择 8255A 可编程并行接口作为系统的扩展接口,8255A 的通用性强,适应灵活,

13、通过它 CPU 可直接与外设相连接。温度控制系统对温度进行检测,然后通过 A/D 转换器(ADC0809)转换成数字信号输入主机。使用 Intel8279 可编程序的键盘、显示接口功能,完成键盘输入和显示控制两种功能。3.13.1 温度温度控制与检测系统控制与检测系统温度信息由温度传感器测量并转换成微安级的电流信号,经过运算放大电路将温度传感器输出的小信号进行跟随放大,输入到 A/D 转换器(ADC0809)转换成数字信号输入主机。数据经过标度转换后,一方面通过数码管将温度显示出来;另一方面,将该温度值与设定的温度值进行比较,调整电加热炉的开通情况,从而控制温度。在断开电加热器,温度仍然异常,

14、报警器发出声音报警,提示采取相应的调整措施。3.1.13.1.1 温度控制温度控制当 PC6 为高电平时,三极管导通,继电器吸合,向加热系统输出 12V 电压加热;反之,输入低电平,三极管截止,继电器断开,停止加热。二极管的作用是吸收继电器端开时产生的浪涌电压。如图 3.1 所示。123456ABCD654321DCBATitleNumberRevisionSizeBDate:18-Dec-2010Sheet of File:H:制制制制.ddbDrawn By:R?R2R92KR102.4KR122.4KK1SPDTQ19013D2IN4007+12V+5V制制图 3.1 温度控制 第 5

15、页3.1.23.1.2 温度测量温度测量AD590 是 AD 公司生产的一种精度和线度较好的双端集成传感器,其输出电流与绝对温度有关,对于电源电压从 5-10V 变化只引起 1uA 最大电流的变化或 1 摄氏度等效误差。AD590 输出的电流:I=(273+T)uA(T 为摄氏温度)。因此测量的电压 V 为(273+T)uA10K=(2.73+T/100)V,为了将电压测量出来,又务必使电流 I 不分流出来。使用电压跟随器使其输出电压 V2等于 V 。由于一般电源供应多器件之后,电源是带杂波的,因此使用稳压二极管作为稳压元件,再利用可变电阻分压,其输出电压 V1需调至 2.73V。差动放大器其

16、输出 V0 为(100K/10K)(V2-V1)=T/10,如果现在为摄氏 28,输出电压为 2.8V。输出电压接 AD 转换器,那么 AD 转换输出的数字量就和摄氏温度成线性比例的关系。123456ABCD654321DCBATitleNumberRevisionSizeBDate:18-Dec-2010Sheet of File:F:制制制制制制制制.ddbDrawn By:R3PO T2R11.23KR210KR510K10KR410KR7100KR6100K321411U1ACA 139321411U2ACA 139Z?D2AD 590+12V图 3.2 温度测量3.23.2 8086

17、8086 微处理器及其体系结构微处理器及其体系结构1. 8086 微处理器的一般性能特点(1) 16 位的内部结构,16 位双向数据信号线;(2)20 位地址信号线,可寻址 1M 字节存储单元;(3)较强的指令系统;(4)利用第 16 位的地址总线来进行 I/O 端口寻址,可寻址 64K 个 I/O 端口;(5)中断功能强,可处理内部软件中断和外部中断,中断源可达 256 个;(6)单一的5V 电源,单相时钟 5MHz。 第 6 页另外,Intel 公司同期推出的 Intel8088 微处理器一种准 16 位微处理器,其内部寄存器,内部操作等均按 16 位处理器设计,与 Intel8088 微

18、处理器基本上相同,不同的是其对外的数据线只有 8 位,目的是为了方便地与 8 位 I/O 接口芯片相兼容。2. 8086CPU 的编程结构编程结构:是指从程序员和使用者的角度看到的结构,亦可称为功能结构。从功能上来看,8086CPU 可分为两部分,即总线接口部件 BIU(Bus Interface Unit)和执行部件EU(Execution Unit) 。8086CPU 的内部功能结构如图 3.3 所示:图 3.3 8086/8088CPU 内部功能结构图38086 的可编程外设接口电路8255 的数据口 D0-D7 与 CPU 的 6 根控制线相连接,控制 8255A 内部的各种操作。控制

19、线RESET 用来使 8255A 复位。CS 和地址线 A1 及 A0 用于芯片选择和通道寻址。分别与 8086 的高位地址线 A19,A1,A0 相连接。 第 7 页123456ABCD654321DCBATitleNumberRevisionSizeBDate:22-Dec-2010Sheet of File:C:UsersAdministratorDesktop制制制制制制制制制制制.ddbDrawn By:RD32AD016LOC/WR29AD115QS0ALE25AD214QS1INA24AD313AD412S0,DEN26AD511S1DT/R27AD610S2M/IO28AD79

20、AD88RQ/GT031AD97RQ/GT130AD106AD115AD124NMI17AD133INTR18AD142AD1539MN/MX33TEST23A16/S338READY22A17/S437A18/S536A19/S635CLK19RESET21BHE/S734U18086D034D133D232D331D430D529D628D727PA04PA13PA22PA31PA440PA539PA638PA737PB018PB119PB220PB321PB422PB523PB624PB725PC014PC115PC216PC317PC413PC512PC611PC710RD5WR36A

21、09A18RESET35CS6U28255AS1KEY4S2KEY4图 3.4 8086 的可编程外设接口电路3.33.3 8255A8255A 并行并行 IOIO 接口接口8255A 芯片内包含有 3 个 8 位的端口,它们是 A 口,B 口和 C 口。这 3 个端口均可作为CPU 与外设通讯时的缓冲器或锁存器,当需要“状态”或“联络”信号时,C 口可以提供,此时,将 C 口的高 4 位为 A 口所用,C 口的低 4 位为 B 口所用。3 个端口通过各自的输入/输出线与外设联系。并行输入/输出端口:一个并行输入/输出的 LSI 芯片,多功能的 I/O 器件,可作为 CPU总线与外围的接口。具

22、有 24 个可编程设置的 I/O 口,即使 3 组 8 位的 I/O 口为 PA 口,PB口和 PC 口。它们又可分为两组 12 位的 I/O 口,A 组包括 A 口及 C 口(高 4 位,PC4PC7),B组包括 B 口及 C 口(低 4 位,PC0PC3)。A 组可设置为基本的 I/O 口,闪控(STROBE)的 I/O闪控式,双向 I/O3 种模式;B 组只能设置为基本 I/O 或闪控式 I/O 两种模式,而这些操作模式完全由控制寄存器的控制字决定。8255 引脚功能:RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有 I/O 口均被置成输入方

23、式。CS:芯片选择信号线,当这个输入引脚为低电平时,即CS=0 时,表示芯片被选中,允许8255 与 CPU 进行通讯;CS=1 时,8255 无法与 CPU 做数据传输。 第 8 页RD:读信号线,当这个输入引脚为低电平时,即RD=0 且CS=0 时,允许 8255 通过数据总线向 CPU 发送数据或状态信息,即 CPU 从 8255 读取信息或数据。 WR:写入信号,当这个输入引脚为低电平时,即WR=0 且CS=0 时,允许 CPU 将数据或控制字写入 8255。 D0D7:三态双向数据总线,8255 与 CPU 数据传送的通道,当 CPU 执行输入输出指令时,通过它实现 8 位数据的读/

24、写操作,控制字和状态信息也通过数据总线传送。 PA0PA7:端口 A 输入输出线,一个 8 位的数据输出锁存器/缓冲器, 一个 8 位的数据输入锁存器。PB0PB7:端口 B 输入输出线,一个 8 位的 I/O 锁存器, 一个 8 位的输入输出缓冲器。 PC0PC7:端口 C 输入输出线,一个 8 位的数据输出锁存器/缓冲器, 一个 8 位的数据输入缓冲器。端口 C 可以通过工作方式设定而分成 2 个 4 位的端口, 每个 4 位的端口包含一个 4 位的锁存器,分别与端口 A 和端口 B 配合使用,可作为控制信号输出或状态信号输入端口。A0、A1:地址选择线,用来选择 8255 的 PA 口,

25、PB 口,PC 口和控制寄存器。当 A0=0,A1=0 时,PA 口被选择;当 A0=0,A1=1 时,PB 口被选择;当 A0=1,A1=0 时,PC 口被选择;当 A0=1。A1=1 时,控制寄存器被选择。3 3. .4 4 ADC0809ADC0809 概概述述ADC0809 是采样分辨率为 8 位的、以逐次逼近原理进行模 数转换的器件。其内部有一个 8 通道多路开关,它可以根据地址码锁存译码后的信号,只选通8 路模拟输入信号中的一个进行 A/D 转换。1.ADC0809 的主要特性1)8 路输入通道, 8 位 AD 转换器,即分辨率为 8 位。 2)具有转换起停控制端。 3)转换时间为

26、 100s4)单个5V 电源供电 5)模拟输入电压范围 05V,不需零点和满刻度校准。 6)工作温度范围为 -4085 摄氏度 7)低功耗,约 15mW。2.ADC0809 的内部逻辑结构 第 9 页 由下图可知,ADC0809 由一个 8 路模拟开关、一个地址锁存与译码器、一个 A/D 转换器和一个三态输出锁存器组成。多路开关可选通 8 个模拟通道,允许 8 路模拟量分时输入,共用 A/D 转换器进行转换。三态输出锁器用于锁存 A/D 转换完的数字量,当 OE 端为高电平时,才可以从三态输出锁存器取走转换完的数据。图 3.5 ADC0809 的内部逻辑结构3.外部特性(引脚功能)ADC080

27、9 芯片有 28 条引脚,采用双列直插式封装,下面说明各引脚功能。 IN0IN7:8 路模拟量输入端。2-12-8: 8 位数字量输出端。ADDA、ADDB、ADDC:3 位地址输入线,用于选通 8 路模拟输入中的一路ALE:地址锁存允许信号,输入,高电平有效。 START: AD 转换启动脉冲输入端,输入一个正脉冲(至少 100ns 宽)使其启动(脉冲上升沿使 0809 复位,下降沿启动 A/D 转换) 。 EOC: AD 转换结束信号,输出,当 AD 转换结束时,此端输出一个高电平(转换期间一直为低电平) 。 OE:数据输出允许信号,输入,高电平有效。当 AD 转换结束时,此端输入一个高电

28、平,才能打开输出三态门,输出数字量。CLK:时钟脉冲输入端。要求时钟频率不高于 640KHZ。 REF(+) 、REF(-):基准电压。 Vcc:电源,单一5V。 第 10 页GND:地。 4. ADC0809 的工作过程首先输入 3 位地址,并使 ALE=1,将地址存入地址锁存器中。此地址经译码选通 8 路模拟输入之一到比较器。START 上升沿将逐次逼近寄存器复位。下降沿启动 AD 转换,之后EOC 输出信号变低,指示转换正在进行。直到 AD 转换完成,EOC 变为高电平,指示 AD转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当 OE 输入高电平 时,输出三态门打开,转换结果的

29、数字量输出到数据总线上。3.53.5 A AD DC C0 08 80 09 9 与与 82558255 的连接的连接模拟输入通道地址 A,B,C 直接接地,因此 ADC0809 只对通道 IN0 输入的电压进行模数转换。为了减少输入噪声其他通道直接接地。ADC0809 的数据线 D0-D7 与 8255 的 PB0-PB7 相连接。其片选 CS 与 8086 的地址/数据总线 AD14 相连接。图 3.6 ADC0809 与 8255 的连接3 3. .6 6 8 82 27 79 9 的的功功能能介介绍绍 Intel8279 是一种通用的可编程序的键盘、显示接口器件,单片器件就能够完成键盘

30、输入和显示控制两种功能。键盘部分提供一种扫描的工作方式,可以和具有 64 个按键的矩阵键盘相连接,能对键盘不断扫描,自动消抖,自动识别按下的键并给出编码,能对双键或 n键同时按下实行保护。显示部分为发光二极管、荧光管及其它显示器提供了按扫描方式工作 第 11 页的显示接口,它为显示器提供多路复用信号,可以显示多达 16 位的字符或数字。INTEL 8279 的逻辑符号如图 7-28 所示。它用于 8085、MCS-51 系统。它最多可外接 8X8的键盘及 16X8 的七段数码显示器。123456ABCD654321DCBATitleNumberRevisionSizeBDate:18-Dec-

31、2010Sheet of File:H:制制制制.ddbDrawn By:OUTA027OUTB031OUTA126OUTB130OUTA225OUTB229OUTA324OUTB328DB012BD23DB113DB214SL032DB315SL133DB416SL234DB517SL335DB618DB719RL038RL139IRQ4RL21RL32CS22RL45RD10RL56WR11RL67A021RL78CLK3SHIFT36RESET9CNTL/S37U48279R?R2R92KR102.4KR122.4KK1SPDTQ19013D2IN4007+12V+5V制制图 3.7 8

32、279 的逻辑符号8279 的操作方式是通过 CPU 对 8279 送入命令时来实现编程的。当数据选择端 A0 置 1 时,CPU 对 8279 写入数据为命令字,读出的数据为状态字。8279 共有八条命令。其功能及命令字定义分述如下。1)键盘/显示方式设置命令字命令格式:D7 D6 D5 D4 D3 D2 D1 D0000DDKKK其中:D7、D6、D5=000 方式设置命令特征位。D D(D4、D3):来设定显示方式,其定义如下:00:8 个字符显示,左入口00:16 个字符显示,左入口00:8 个字符显示,右入口00:16 个字符显示,右入口 所谓左入口,即显示位置从最左一位(最高位)开

33、始,以后逐次输入的显示字符逐个向右顺序排列; 所谓右入口,即显示位置从最右一位(最低位)开始,以后逐次输入的显示字符时,已有的显示字符逐个向左顺序移动。 KKK(D2、 D1、 D0):用来设定七种键盘、显示工作方式2)读显示 RAM 命令 第 12 页命令格式:D7 D6 D5 D4 D3 D2 D1 D0011AIAAAA其中:D7D6D5 =011 为读显示 RAM 命令字的特征位。该命令用来设定将要读出的显示 RAM 地址。AAAA(D3、D2、D1、D0)用来寻址显示 RAM 命令字的特征位。由位显示 RAM 中有 16 个字节单元故需要 4 位寻址。AI(D4)为自动增量特征位。当

34、 AI=1 时,每次读出后地址自动加 1 指向下一地址。3)写显示 RAM 命令命令格式:D7 D6 D5 D4 D3 D2 D1 D0100AIAAAA其中:D7D6D5 =100 为写显示 RAM 命令字的特征位。在写显示器 RAM 之前用该命令用来设定将要写入的显示 RAM 地址。 AAAA(D3、D2、D1、D0)为将要写入的存储单元地址。AI(D4)为自动增量特征位。当 AI=1 时,每次写入后地址自动加 1 指向下一次写入地址。3.73.7 LEDLED 显显示示器器工作原理:发光二极管组成的显示器事单片机应用产品中最常用的廉价输出设备。它由若干个发光二极管按一定的规律排列而成。当

35、某一个发光二极管导通时,相应的一个点或一个比划被点亮,控制不同组合的二极管导通,就能显示出多种字符。常见 LED 数码管的两种接法如图 3.8 所示。 图 3.8 7 段 LED 数码管的两种接法通过控制管脚 a、b、c、d、e、f、g、dp 的电平即可获得所需的符号显示。显示器的工作方式有两种,一种是静态显示:当显示器显示某一个字符时,相应的发光二极管恒定地导通或截止。另一种事本次设计中采用的动态显示方式:所谓动态显示即一位一位轮流的点亮各位显示器,对于每一位显示器来说,每隔一段时间点亮一次。但由于时间间隔很小,我们就可以看到完整的显示了。 第 13 页 图 3.9 数据显示部分4 4 系统

36、工作原理及软件设计系统工作原理及软件设计针对各模块的硬件功能,对各模块设定子程序,通过主程序对这些子程序模块的调用,完成软件设计。4.14.1 系统工作原理系统工作原理(1) 温度测量显示部分温度通过 AD590 温度传感集成芯片,将温度变化量转换成电压值变化量,经过 OP07 一级跟随后输入到电压放大电路,放大后的信号输入到 A/D 转换器将模拟信号转换成数字信号,然后将该数字信号通过然间编程转化为十进制 BCD 码,并送到 8279 进行温度值的显示。(2) 温度控制部分 温度的上升或下降,通过给加热系统通断电来实现。当需要加热时,8255 的 PC6 输出 第 14 页低电平,启动加热系

37、统。当需要降温时,8255 的 PC6 输出高电平,关闭加热系统。加热或降温的控制信号通过 8255 的 PA0 读取拨动开关的状态来实现。4.24.2 系统软件系统软件设计设计本设计的目的是以 8086 微处理器为控制器,将温度传感器输出的小信号经过放大和低通滤波后,送至 A/D 转换器;微控制器实时采集、显示温度值(要求以摄氏度显示) ,同时系统还应可设定、控制温度值,使系统工作在设定温度。4.34.3 系统流程图系统流程图1主程序通过开始界面,显示提示信息,调用温度子程序,设置温度。通过模数转换器采集 AD值并求其平均值。调用 BCD 码转换子程序将其转换为十进制温度值;调用显示子程序,

38、如果温度高于实际温度,就加热,反之拨动开关关闭,停止加热。在此过程中,还可以重复设置温度值。其流程图如图 4.1 所示。 第 15 页图 4.1 主程序流程图2BCD 码转换子程序N开始系统初始化显示提示信息调用温度值设置子程序实际温度低于给定值PA0=1加热8255 PC6 口=1停止加热8255 PC6 口=0显示提示信息调用温度值设置子程序重新设置温度并将 PA0 拨到 0 以进行重新调节返回采集 AD 值并求其平均值调用 BCD 码转换子程序将其转换为十进制温度值调用显示子程序YYNNN有键按下 第 16 页设定温度为 0 摄氏度时变换放大电路送出的模拟量为 0.0V,此时 A/D 输

39、出的数字量为 00H;温度为 68时变换器送出对应电压 4.98V,此时 A/D 输出的数字量为 FFH,即每0.3对应 1LSB 的变化量,对应电压值为 19.5mV。报警温度设定为 68,此时,输出电压约为 5.0V 左右。其流程图如图 4.2 所示。图 4.2 BCD 码转换子程序3.显示子程序采用动态显示方式,其流程图如图 4.3 所示。4.温度值设置子程序问了避免加热温度过高,在程序设计中加了一条,即设定值不能大于 68,否则就认为有错系统报警。其流程图如图 4.4 所示。BCD 码转换子程序将采集得到的平均值乘以 0.3 转换为温度值返回对其进行非压缩 BCD码乘法调整通过移位得到

40、组合 BCD 码 第 17 页图 4.3 显示子程序得到温度值各位上的数通过查表指令得到对应的数码管的断码温度值设置子程序键入温度值十位上的数值将它存于DI键入温度值个位上的数值将它存于DI+1将十位上的数值左移四位并与个位上的数值既得温度值设置温度大于 68将温度值存于DI+1返回声音报警并显示错误信息返回显示温度值十位上的数值延时返回显示子程序NY图 4.4 温度值设置先将十进制温度值(AL)送到(BL)通过查表指令得到对应的数码管的断码显示温度值个位上的数值延时取出(BL)中的温度值得到温度值十位上的数值 第 18 页5.5.系统调试系统调试通过前一部分的介绍说明,我们对系统的工作情况有

41、了大体的了解。为了进一步了解系统的工作过程,这里介绍一下系统调试过程及调试过程中出现的一些具体的问题,软件仿真图。实验调试软件运行于 DOC 环境下,其步骤如下:一、根据硬件图和原理图连接好线路。AD0.15READY22INTR18NMI17RESET21CLK19MN/MX33HOLD/GT131HLDA/GT030A16.19M/IO/S028ALE/QS025DT/R/S127INTA/QS124TEST23BHE34DEN/S226RD32WR/LOCK29U18086D034D133D232D331D430D529D628D727RD5WR36A09A18RESET35CS6PA0

42、4PA13PA22PA31PA440PA539PA638PA737PB018PB119PB220PB321PB422PB523PB624PB725PC014PC115PC216PC317PC413PC512PC611PC710U28255APICCLK3AD0.7A021RES9CS22RD10WR11BD23IRQ4OUT_A027OUT_A126OUT_A225OUT_A324OUT_B031OUT_B130OUT_B229OUT_B328RL0.7SL335SL234SL133SL032CTRL/STB37SHIFT36U48279A1B2C3E16E24E35Y015Y114Y213Y

43、312Y411Y510Y69Y77U574LS138A02B018A13B117A24B216A35B315A46B414A57B513A68B612A79B711CE19AB/BA1U674LS245A02B018A13B117A24B216A35B315A46B414A57B513A68B612A79B711CE19AB/BA1U774LS245RV1100K+5OUT121ADD B24ADD A25ADD C23VREF(+)12VREF(-)16IN31IN42IN53IN64IN75START6OUT58EOC7OE9CLOCK10OUT220OUT714OUT615OUT817O

44、UT418OUT319IN228IN127IN026ALE22U8ADC0808 第 19 页二、在 PC 机上敲入程序,并对其进行的查错,编译,连接,最后生成可执行文件。三、接上电源,敲入可执行文件的文件名,系统就开始了工作过程。1)这是 DOC 屏幕上会出现的一些提示信息,如ENTER ANY KEY TO BEGIN! LET PA0=0 TO ADJUST THE TEMPERATURE VALUE! LET PA0=1 TO INPUT A NEW TEMPERATURE VALUE!这里后两条只作注释用。2)然后敲任意一个键,系统就开始进行温度测量和显示,屏幕上就会显示 INPUT

45、 THE TEMPERATURE:在这一条信息之后敲入一温度值。注意这里敲入的温度值不能大于 76 摄氏度,否则屏幕将会显示INPUT VALUE ERROR !并返回 DOC。(以后重新设定温度时也是如此)3)在正常情况下,敲入设定温度后系统就开始进行控制调节,当实际温度小鱼设定值时,系统就开始进行加热,如果不加改变,它就会加热一直稳定到设定的温度值;如果这是想重新设置一温度,只要把 8255 的 PA0 读取拨动开关拨到 1,屏幕上就会显示:INPUT A NEW TEMPERATURE:这里又得注意一下,在敲入一个新的设定温度之前,得先把 PA0 读取拨动开关拨到 0,否则,在敲完设定温

46、度之后,屏幕上又会显示同样一条信息。因为它是根据 PA0 是 0 还是 1 来决定是去重新输入设定温度还是去调节温度。如果不先把 PA0 拨为 0,它就是一直让你输入却不进行调节。另外,这里温度值的设定的次数没有限制。 第 20 页6 6 结论结论本设计采用的 8086 微处理器实现温度的控制。具有体积小、重量轻、抗干扰能力强、对环境要求不高、价格低廉、可靠性高、灵活性好、易于推广应用等显著优点,通过软件逻辑控制实现对温度的控制和调节。本文的温度控制系统,只是 8086 广泛应用于各行各业中的一例。本设计中应用了许多与微机接口技术的芯片和常用的外部设备,芯片如:ADC0809,8255 等。外

47、部设备如:温度检测元件 AD590,键盘和显示系统中的 LED 显示器等。该系统的主要优点如下:一、本系统本着简单可靠的原则完成了设计要求,尽量做到线路简单,充分利用软件编程,安装比较灵活而且价格较低。二、在系统的硬件和软件设计中,都加有安全设计部分,避免加热过高造成设备的损坏。同时,该系统在测量过程中会带来系统误差。最后,通过这次设计,我发现还有很多知识并不牢固,因此在以后的学习中更应该多了解并掌握微机原理与接口技术的相关知识,熟练掌握使用汇编语言编程实现微机芯片的控制,多积累经验为以后的工作打好基础,最后感谢王萍老师的精心指点,对此我深表谢意。 第 21 页7 7 参考文献参考文献1 戴梅

48、蕚 微型计算机技术及应用2007 清华大学出版社2 武锋 单片机应用系统设计-系统配置与接口技术1998.8 北京航空航天大学出版社3 何克忠 计算机控制系统 2002 清华大学出版社4 朱善君 汇编语言程序设计 1998.3 清华大学出版社5 颜永军 protel99 电路设计与应用2001.1 国防工业出版社6 薛明军.集成温度传感器 IH3605 及应用.国外电子无器件.2000.17 康华光.电子技术基础(模拟部分).高等教育出版社.2006.18 沙占友.集成化智能传感器原理与应用M.北京:电子工业出版社,2004:119-127.9 孟臣、李敏、李爱传. I2C 总线数字式温湿度传

49、感器 SHT11 及其在单片机系统的应用J.国外电子元器件,2004(3):50-5410 刘迎春、叶湘滨.现代新型传感器原理与应用M. 北京:国防工业出版社,1998.11 何希才.传感器及其应用电路M. 北京:电子工业出版社,2001. 12 沙占友.智能化集成温度传感器原理与应用M. 北京:机械工业出版社,2002.13 赵继文.传感器与应用电路设计M. 北京:科学出版社,2002.14 丁镇生.传感器及传感技术应用M. 北京:电子工业出版社,1998.15 张洪润、刘秀英、张亚凡等.单片机应用设计 200 例M北京:航空航天大学出版社,2006.16 Nordic VLSI ASA.

50、nRF24E1 and nRF24E2 RF layoutsP. Application Note, ordercode: 200503-nAN24-0.2003. 第 22 页附录附录 1 1:电路总图:电路总图123456ABCD654321DCBATitleNumberRevisionSizeBDate:22-Dec-2010Sheet of File:D:U制制制制制制制制制制制制制制制制制制.ddbDrawn By:RD32AD016LOC/WR29AD115QS0ALE25AD214QS1INA24AD313AD412S0,DEN26AD511S1DT/R27AD610S2M/IO

51、28AD79AD88RQ/GT031AD97RQ/GT130AD106AD115AD124NM I17AD133INTR18AD142AD1539MN/M X33TEST23A16/S338READY22A17/S437A18/S536A19/S635CLK19RESET21BHE/S734U18086D034D133D232D331D430D529D628D727PA04PA13PA22PA31PA440PA539PA638PA737PB018PB119PB220PB321PB422PB523PB624PB725PC014PC115PC216PC317PC413PC512PC611PC710

52、RD5WR36A09A18RESET35CS6U28255AOUTA027OUTB031OUTA126OUTB130OUTA225OUTB229OUTA324OUTB328DB012BD23DB113DB214SL032DB315SL133DB416SL234DB517SL335DB618DB719RL038RL139IRQ4RL21RL32CS22RL45RD10RL56WR11RL67A021RL78CLK3SHIFT36RESET9CNTL/S37U48279IN026IN127IN228IN31IN42IN53IN64IN75START6ALE22OE9VCC11GND13REF+12

53、REF-16ADD-C13ADD-B14ADD-A15EOC7D017D114D215D38D418D519D620D721U3ADC0809123U?ADM 74LS32123U?ADM 74LS3212U?ADM 74LS1412U?ADM 74LS14Y77Y69Y510Y411Y312Y213Y114Y015E36E23E14A1B2C3U574LS1381A11A23A34A45A56A67A78A81Y162Y153Y144Y135Y126Y117Y108Y9U61A11A23A34A45A56A67A78A81Y162Y153Y144Y135Y126Y117Y108Y9U7R3P

54、OT2R11.23KR210KR510KR?R2R92K10KR?R2R?R2R?R2R410KR7100KR6100KR12321411U1ACA139321411U2ACA139Z?D2AD590R102.4KR122.4KK1SPDTQ19013D2IN4007e1d2dp3c4g5nc6b7G38G29f10a11G112LED3LED-CC+12V+12V+5V+5V+5V制制DICDICS1KEY4S2KEY4 第 23 页附录附录 2 2:程序:程序CSAD EQU 209HZ8279 EQU 212HD8279 EQU 210HLEDMOD EQU 00H; 左边输入,八位显示

55、外部译码八位显示LEDFEQ EQU 38H; 扫描频率LEDCLS EQU 0C1H; 清除显示 RAMZ8255 EQU 21BHZ8255A EQU 218HZ8255C EQU 21AHCOUNT EQU 8DATA SEGMENTDATA1 DB 4 DUP(?)MESS1 DB ENTER ANY KEY TO BEGIN! ,0DH,0AH, $MESS2 DB 10, 13, ENTER ANY KEY CAN EXIT TO DOS! ,0DH,0AH, $MESS3 DB 10, 13, INPUT THE TEMPERATURE VALUE:, $MESS4 DB 10,

56、 13, INPUT VALUE ERROR!,0DH,0AH, $ MESS5 DB 10, 13, INPUT A NEW TEMPERATURE VALUE:, $MESS6 DB 10, 13, * LET PA0=0 TO ADJUST THE TEMPERATURE VALUE!*,0DH,0AH, $ MESS7 DB 10, 13, * LET PA0=1 TO INPUT A NEW TEMPERATURE VALUE!*, 0DH,0AH, $LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39HDATA END

57、SSTACK SEGMENT SRACKSTA DW 50 DUP(?)TOP EQU LENGTH STASTACK ENDSCODE SEGMENTASSUME CS: CODE,DS: DATA,ES: DATA,SS: STACKSTART: MOV AX, DATA MOV DS, AX MOV ES, AX MOV AH,09H ; 显示提示信息一 第 24 页 MOV DX, OFFSET MESS1 INT 21HMOV AH,09H ; 显示提示信息六 MOV DX, OFFSET MESS6 INT 21H MOV AH,09H ; 显示提示信息七 MOV DX, OFFSET MESS7 INT 21H MOV AH,08H INT 21H MOV AH,09H

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论