基于8086的温度系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录
1引言 (1)
2 设计方案与论证 (1)
3 设计内容 (2)
3.1系统扩展接口的选择 (2)
3.2温度传感器与A\D转换器的选择 (2)
3.3显示接口芯片 (3)
3.4设计原理及功能说明 (3)
3.5系统软件设计 (4)
3.6单元电路的设计(计算与说明) (5)
4.8086微处理器及其体系结构 (8)
4.18086微处理器的一般性能特点 (8)
4.2.8086CPU的编程结构 (9)
4.38255A并行I\O接口 (9)
4.4ADC0809概述 (11)
4.5ADC0809与8255的连接 (13)
4.6键盘/显示方式设置命令字 (13)
4.7LED显示器 (14)
5硬件的制作与调试 (14)
6 结束语: (17)
参考文献 (19)
附录1:元器件清单: (20)
附录2:电路总图 (20)
附录3:程序 (20)
1引言
为了实现计算机对生产过程及对象的控制,需要将对象的各种测量参数按照要求转换成数字信号送入计算机。计算机运算处理后再转换成适合于对生产过程进行控制的量。所以在微机和生产过程之间,须设置信息的变换和传递通道。主要功能就是随时间变化的模拟输入信号变成数字信号送入计算机,主要由AD590温度传感器,8088CPU,8255A, A/D转换器和数码管显示器等组成。
本实验通过设计一个微机控制的温度控制系统旨在能做到以下几点:1.了解微机控制的温度采集系统软硬件设计原理和方法。2.进一步掌握并行接口芯片和模数转换的工作原理与使用方法。
以8088 CPU 为核心设计一个温度采集系统,系统可以实现一路温度的采集,在3位LED显示器上显示当前温度。
本设计所用器件主要有传感器,A/D转换器,8088CPU,可编程并行接口8255,显示器等。首先传感器把所测的温度转换为电压,输入A/D转换器中进行转换,然后再把得到的二进制数经过CPU在数码管上显示出来。
本设计共分以下几个模块:8088主控模块、A/D转换模块、并行接口模块、显示模块。
2 设计方案与论证
采用铂电阻温度传感器的电阻与温度的关系是非线性的,用电桥实现温度升高引起的电阻变化对应于电压的变化。经A/D转换器后,送入锁存器锁存,在经译码器输出后,再在数码管上显示,由于74LS373具有锁存功能就能实现四位的温度显示。由于
铂电阻与温度的关系是非线性的,因此输出的结果测试精度较低,并且不能达到我们对温度控制的要求。
图2-1设计方案
3 设计内容
3.1系统扩展接口的选择
本次设计采用的是8086微处理器,选择8255A可编程并行接口作为系统的扩展接口,8255A的通用性强,适应灵活,通过它CPU可直接与外设相连接。
3.2温度传感器与A\D转换器的选择
本系统选用温度传感器AD590构成测温系统。AD590是一种电压输入、电流输出型集成温度传感器,测温范围为-55℃~150℃,非线性误差在±0。30℃,其输出电流与温度成正比,温度每升高1K(K为开尔文温度),输出电流就增加1uA。其输出电流I=(273+T)uA。本设计中串联电阻的阻值选用2KΩ,所以输=(2730 + 10T)MV.另外,为满足系统输入模拟量进行处出电压V
+
理的功能,对其再扩展一片ADC0809,以进行模拟—数字量转化。
3.3显示接口芯片
为满足本次设计温度显示的需要,我们选择了8279芯片,INTEL8279芯片是一种通用的可编程的键盘、显示接口器件,单个芯片就能完成键盘键入和数码管显示控制两种功能。
3.4设计原理及功能说明
本系统采用的是8086微处理器,选择8255A可编程并行接口作为系统的扩展接口,8255A的通用性强,适应灵活,通过它CPU可直接与外设相连接。对温度进行检测,然后通过A/D转换器(ADC0809)转换成数字信号输入主机。使用Intel8279可编程序的键盘、显示接口功能,完成键盘输入和显示控制两种功能。针对各模块的硬件功能,对各模块设定子程序,通过主程序对这些子程序模块的调用,完成软件设计。
(1)温度测量显示部分
温度通过AD590温度传感集成芯片,将温度变化量转换成电压值变化量,经过OP07一级跟随后输入到电压放大电路,放大后的信号输入到A/D转换器将模拟信号转换成数字信号,然后将该数字信号通过然间编程转化为十进制BCD码,并送到8279进行温度值的显示。
图 3-1主程序流程图
3.5系统软件设计
本设计的目的是以8086微处理器为控制器,将温度传感器输出的小信号经过放大和低通滤波后,送至A/D转换器;微控制器实时采集、显示温度值(要求以摄氏度显示),同时系统还应可设定、控制温度值,使系统工作在设定温度。
通过开始界面,显示提示信息,调用温度子程序,设置温度。通过模数转换器采集A\D值并求其平均值。调用BCD码转换子程序将其转换为十进制温度值;调用显示子程序,如果温度高于实际温度,就加热,反之拨动开关关闭,停止加热。在此过程中,还可以重复设置温度值。
(1) BCD码转换子程序
设定温度为0摄氏度时变换放大电路送出的模拟量为0.0V,此时A/D输出的数字量为00H;温度为68℃时变换器送出对应电压4.98V,此时A/D输出的数字量为FFH,即每0.3℃对应1LSB 的变化量,对应电压值为19.5mV。报警温度设定为68℃,此时,输出电压约为5.0V左右。
(2)温度值设置子程序
为了避免加热温度过高,在程序设计中加了一条,即设定值不能大于68℃,否则就认为有错系统报警。
3.6单元电路的设计(计算与说明)
(1)温度检测系统
温度信息由温度传感器测量并转换成微安级的电流信号,经过运算放大电路将温度传感器输出的小信号进行跟随放大,输入到A/D转换器(ADC0809)转换成数字信号输入主机。数据经过标度转换后,一方面通过数码管将温度显示出来;另一方面,将该温度值与设定的温度值进行比较,调整电加热炉的开通情况,从而控制温度。在断开电加热器,温度仍然异常,报警器发出声音报警,提示采取相应的调整措施。
(2)温度测量部分
A\D590是AD公司生产的一种精度和线度较好的双端集成传感器,其输出电流与绝对温度有关,对于电源电压从5-10V变化只引起1uA最大电流的变化或1摄氏度等效误差。图4-1给出了