ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:163.82KB ,
资源ID:20754502      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20754502.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机原理与接口课程设计温度控制系统Word下载.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机原理与接口课程设计温度控制系统Word下载.docx

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

2、(100K/10K)(V-V)=T/10,如果现在为摄氏28?,021输出电压为2.8V。输出电压接AD转换器,那么AD转换输出的数字量就和摄氏温度成线性比例的关系。图2-1温度测量部分 2)温度控制部分 当PC6为高电平时,三极管导通,继电器吸合,向加热系统输出12V电压加热;反之,输入低电平,三极管截止,继电器断开,停止加热。在图4-中,二极管的作用是吸收继电器端开时产生的浪涌电压。图2-2温度控制部分 2.1.2 ADC0809与8255的连接 模拟输入通道地址A,B,C直接接地,因此ADC0809只对通道IN0输入的电压进行模数转换。为了减少输入噪声其他通道直接接地。ADC0809的数

3、据线D0-D7与8255的PB0-PB7相连接。其片选CS与8086的地址/数据总线AD14相连接。图2-3 ADC0809与8255的连接 2.1.3 8086的可编程外设接口电路 8255的数据口D0-D7与CPU的6根控制线相连接,控制8255A内部的各种操作。控制线RESET用来使8255A复位。CS和地址线A1及A0用于芯片选择和通道寻址。分别与8086的高位地址线A19,A1,A0相连接。图 2-4 8086的可编程外设接口电路 2.4 数据显示部分 图2-5 数据显示部分 图2-6 系统硬件原理图 2.3系统流程图 2.3.1 主程序 通过开始界面,显示提示信息,调用温度子程序,

4、设置温度。通过模数转换器采集AD值并求其平均值。调用BCD码转换子程序将其转换为十进制温度值;调用显示子程序,如果温度高于实际温度,就加热,反之拨动开关关闭,停止加热。在此过程中,还可以重复设置温度值。其流程图如图2-7所示。开始 系统初始化 显示提示信息 调用温度值设置 子程序 采集AD值并求其平均值 调用温度值设置子调用BCD码转换子程序 程序重新设置温度将其转换为十进制温度值 并将PA0拨到0 以进行重新调节 调用显示子程序 N N 实际温度低PA0=1 于给定值 Y 停止加热 加热 8255 PC6口=0 8255 PC6口=1 Y N 有键按下 返回 图2-7主程序 2.3.2 BC

5、D码转换子程序 设定温度为0摄氏度时变换放大电路送出的模拟量为0.0V,此时A/D输出的数字量为00H;温度为76.5?时变换器送出对应电压4.98V,此时A/D输出的数字量为FFH,即每0.3?对应1LSB的变化量,对应电压值为19.5mV。报警温度设定为76.8?,此时,输出电压约为5.0V左右。其流程图如图2-8所示。BCD码转换子程序 将采集得到的平均值乘以0.3 转换为温度值 对其进行非压缩BCD码乘法调整 通过移位得到组合BCD码 返回 图2-8 BCD码转换子程序 2.3.3.显示子程序 采用动态显示方式,其流程图如图2-9所示。2.3.4.温度值设置子程序 问了避免加热温度过高

6、,在程序设计中加了一条,即设定值不能大于76.8?否则就认为有错系统报警。其流程图如图2-10所示。温度设置子程序 显示子程序 键入温度值十位上的数值将它存于,DI, 先将十进制温度值(AL)送到(BL) 键入温度值个位上的数值得到温度值各位上的数 将它存于,DI+1, 通过查表指令得到对应的将十位上的数值左移四位并数码管的断码 与个位上的数值既得温度值 显示温度值个位上的数值 设置温度大于76? 延时 声音报警并取出(BL)中的温度值 显示错误信 将温度值存于,DI+1, 息 得到温度值十位上的数值 返回 返回 通过查表指令得到 对应的数码管的断码 图2-10温度设置子程序 显示温度值十位上

7、的数值 延时 图2-9显示子程序 3.详细设计 3.1 系统工作原理 1)温度测量显示部分 温度通过AD590温度传感集成芯片,将温度变化量转换成电压值变化量,经过OP07一级跟随后输入到电压放大电路,放大后的信号输入到A/D转换器将模拟信号转换成数字信号,然后将该数字信号通过然间编程转化为十进制BCD码,并送到8279进行温度值的显示。温度的上升或下降,通过给加热系统通断电来实现。当需要加热时,8255的PC6输出低电平,启动加热系统。当需要降温时,8255的PC6输出高电平,关闭加热系统。加热或降温的控制信号通过8255的PA0读取拨动开关的状态来实现。3.2 系统硬件选择和设计 1)系统

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

9、C0809,以进行模拟数字量转化。3)显示接口芯片 为满足本次设计温度显示的需要,我们选择了8279芯片,INTEL8279芯片是一种通用的可编程的键盘、显示接口器件,单个芯片就能完成键盘键入和LED显示控制两种功能。备注:系统硬件接线应尽量以插接形式连接,这样便于多用途使用和故障的检查和排除。3.3 ADC0809 1)ADC0809概述 ADC0809是采样分辨率为8位的、以逐次逼近原理进行模数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。2) ADC0809的主要特性 1)8路输入通道,8位A,D转换器,即分辨率为

10、8位。2)具有转换起停控制端。3)转换时间为100s 4)单个,5V电源供电 5)模拟输入电压范围0,,5V,不需零点和满刻度校准。6)工作温度范围为-40,,85摄氏度 7)低功耗,约15mW。3) 内部结构 3.1)ADC0809的内部逻辑结构 由下图可知,ADC0809由一个8路模拟开关、一个地址锁存与译码器、一个A/D转换器和一个三态输出锁存器组成。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。图2-11 ADC0809的内部逻辑结构 3.2)外部特性(

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

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

13、79键盘、显示接口电路 Intel8279是一种通用的可编程序的键盘、显示接口器件,单片器件就能够完成键盘输入和显示控制两种功能。键盘部分提供一种扫描的工作方式,可以和具有64个按键的矩阵键盘相连接,能对键盘不断扫描,自动消抖,自动识别按下的键并给出编码,能对双键或n键同时按下实行保护。显示部分为发光二极管、荧光管及其它显示器提供了按扫描方式工作的显示接口,它为显示器提供多路复用信号,可以显示多达16位的字符或数字。INTEL 8279的逻辑符号如图7-28所示。它用于8085、MCS-51系统。它最多可外接8X8的键盘及16X8的七段数码显示器。图3-4 8279的逻辑符号 3.4.1 82

14、79管脚、引线及功能说明 8279为40列引脚封装,详细说明如下:D0D7(数据总线):双向、三态总线。用于和系统数据总线相连,在CPU 和8279之间传递命令或数据。CLK(系统时钟):输入线。用于8279内部定时,以产生其工作所需时序。RESET(复位):输入线,高电平有效。当复位信号RESET=1时,8279被复位。(片选):输入线,低电平有效。当 =0时,8279被选中,允许CPU对其进行读、写操作,否则被禁止。A0(缓冲器地址):当A0=1时,若CPU进行写操作,则写入字节是命令字。若进行读操作,则从8279读出的字节是状态字。当A0=0时,写入字节或读出字节均为数据。、(读、写信号

15、):这两个来自CPU的控制RDWR信号,控制8279的读写操作。IRQ(中断请求):输出线,高电平有效。在键盘工作方式中,当FIFO/传感器RAM中存有数据时,IRQ为高电平,向CPU提出中断申请。CPU每次从RAM中读出一个字节数据时,IRQ就变成低电平。如果RAM中还有未读完的数据,IRQ将再次变为高电平,再次提出中断申请求。在传感器工作方式中,每当检测到传感器状态变化时,IRQ就出现高电平。SL0SL3(扫描线):输出线。这四条输出线用来扫描键盘和显示器。它们可以编程设定为编码输出(16中取1)或译码输出(4中取1)。RL0RL7(回复线):它们是键盘矩阵或传感器矩阵的列信号输入线。SH

16、IFT(移位信号):该输入信号是8279键盘数据的次高位D6,通常用来补充键盘开关的功能,可以用作键盘上下挡功能键。在传感器方式和选通方式中,SHIFT无效。CNTL/STB(控制/选通):在键盘方式时,该输入信号是键盘数据的最高位D7,通常用来扩充键开关的控制功能,作为控制功能键用。在传感器方式下,CNTL信号无效。在选通输入方式下,该信号的上升沿可将来自RL0RL7的数据存放入FIFO RAM中。OUTA0OUTA3 (A组显示信号):OUTB0OUTB3 (B组显示信号):这两组引线均是显示信息输出线,它们与多路数字显示的扫描线SL0SL3同步。两组可以独立使用,也可以合并使用。(消隐显

17、示):输出线,低电平有效。该输出信号在数字切换显示或使用显示消隐命令时,将显示消隐。3.4.2 命令格式与命令字 8279的操作方式是通过CPU对8279送入命令时来实现编程的。当数据选择端A0置1时,CPU对8279写入数据为命令字,读出的数据为状态字。8279共有八条命令。其功能及命令字定义分述如下。1、键盘/显示方式设置命令字 命令格式:D7 D6 D5 D4 D3 D2 D1 D0 0 0 0 D D K K K 其中:D7、D6、D5=000方式设置命令特征位。D D(D4、D3):来设定显示方式,其定义如下:00:8个字符显示,左入口 16个字符显示,左入口 8个字符显示,右入口

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

19、后地址自动加1指向下一地址。5(写显示RAM命令 1 0 0 AI A A A A D7D6D5 =100为写显示RAM命令字的特征位。在写显示器RAM之前用该命令用来设定将要写入的显示RAM地址。AAAA(D3、D2、D1、D0)为将要写入的存储单元地址。当AI=1时,每次写入后地址自动加1指向下一次写入地址。3.4.3 LED显示器工作原理 发光二极管组成的显示器事单片机应用产品中最常用的廉价输出设备。它由若干个发光二极管按一定的规律排列而成。当某一个发光二极管导通时,相应的一个点或一个比划被点亮,控制不同组合的二极管导通,就能显示出多种字符。常见LED数码管的外形及内部结构如图3-4-3

20、-1 所示。 图3-4-3-2属于共阳极结构,图3-4-3-3采用共阴极结构。图3-4-3-1 图3-4-3-2 图3-4-3-3 图 3-4-3 LED显示器工作原理 通过控制管脚a、b、c、d、e、f、g、dp的电平即可获得所需的符号显示。显示器的工作方式有两种,一种是静态显示:当显示器显示某一个字符时,相应的发光二极管恒定地导通或截止。另一种事本次设计中采用的动态显示方式:所谓动态显示即一位一位轮流的点亮各位显示器,对于每一位显示器来说,每隔一段时间点亮一次。但由于时间间隔很小,我们就可以看到完整的显示了。 3.5系统软件设计 本设计的目的是以8086微处理器为控制器,将温度传感器输出的

21、小信号经过放大和低通滤波后,送至A/D转换器;微控制器实时采集、显示温度值(要求以摄氏度显示),同时系统还应可设定、控制温度值,使系统工作在设定温度。4.总结 通过本次课程设计,学到了很多东西,也突然发现以前学到的东西太少了,没有积累足够的知识来让自己强大。所以,刚开始时,很迷茫,不知如何下手。之后,在在网上查了下资料,大部分都是单片机实现的。单片机是我们还没学的知识。所以,第一次拿着单片机的程序给老师检查的时候,老师给了我些很宝贵的建议,让我们用学过的仿真软件来实现。于是,我们重新开始查资料,做了这次的课程设计。收获很多。以后,一定会更努力学习的。加油加油。 5.参考文献 1 戴梅蕚 微型计

22、算机技术及应用2007 清华大学出版社 2 朱善君 汇编语言程序设计 1998.3 清华大学出版社 6.附:源程序 CSAD EQU 209H Z8279 EQU 212H D8279 EQU 210H LEDMOD EQU 00H; 左边输入,八位显示外部译码八位显示 LEDFEQ EQU 38H; 扫描频率 LEDCLS EQU 0C1H; 清除显示RAM Z8255 EQU 21BH Z8255A EQU 218H Z8255C EQU 21AH COUNT EQU 8 DATA SEGMENT DATA1 DB 4 DUP(?) MESS1 DB ENTER ANY KEY TO BE

23、GIN! ,0DH,0AH,$ MESS2 DB 10, 13,ENTER ANY KEY CAN EXIT TO DOS! MESS3 DB 10, 13,INPUT THE TEMPERATURE VALUE:, MESS4 DB 10, 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!*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,39H DATA ENDS STACK SEGMENT SRACKSTA DW 50 DUP(?TOP EQU LENGTH STA STACK ENDS CODE SEGMENT ASSUME CS: CODE,DS: DATA,ES

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1