您的当前位置:首页正文

温度测控系统的设计

2021-08-10 来源:星星旅游


序号: 14

山东理工大学计算机学院

课 程 设 计

(微机原理及应用A)

班 级 XXXXX班 姓 名 XXX 学 号 XXXXXX 指导教师 XXX

二○一○ 年 七 月 十六 日

课程设计任务书及成绩评定

课题名称 ______温度测控系统的设计________

I、题目的目的和要求:

学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。

温度测控系统的设计:利用ADC0809采用中断方式设计一个温度测控系统,在LED数码显示器上显示温度值,并对温度进行测试和控制,当检测温度到达温度上限60℃时开风扇(即开启电动机),低于下限30℃时关闭风扇,LED上的显示内容为:XX ℃(采用十进制显示)。

II、设计进度及完成情况

日 期 内 容 2010.7.12-2010.7.13 根据题目要求查阅资料构思设计方案、进行接口电路原理图设计和程序设计以及其它准备工作 2010.7.14 2010.7.15 2010.7.16 在实验系统上进行接线和连接,进行程序的编写和调试 上机验收。 编写课程设计说明书

1

2

III、主要参考文献及资料

《微机原理与接口技术》 彭虎 周佩玲 傅忠谦编著 电子工业出版社 《微机原理与接口实验指导与实验题集》周明德 蒋本珊编著 人民邮电出版社 《微机原理应用实验教程》 陈够喜 邵坚婷 张军编著 人民邮电出版社 《微型计算机技术及应用》 清华大学出版社 戴梅萼、史嘉权

学科部主任 (签字)

Ⅵ、成绩评定:

设计成绩: (教师填写)

3

指导老师: (签字)

二○一〇 年 七 月 十六 日

设计题目:温度测控系统的设计

一、课程设计的目的及意义:

学习和掌握计算机中常用接口电路的应用和设计技术,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学的知识的应用能力以及分析问题解决问题的能力得到全面提高。

二、设计题目及要求:

温度测控系统的设计:利用ADC0809采用中断方式设计一个温度测控系统,在LED数码显示器上显示温度值,并对温度进行测试和控制,当检测温度到达温度上限60℃时开风扇(即开启电动机),低于下限30℃时关闭风扇,LED上的显示内容为:XX ℃(采用十进制显示)。 三、电路原理图:

该系统是利用ADC0809采用中断式设计的一个温度测控系统。该系统设计中用到的接口部件有:8255、8259、ADC0809等

+5VD0~D7+VREFVCC+5VD0~D7IN0ADC0809EOCPA0PA18259IR0A0A1A2CLK 0.5MINTAINTR8255PA7........PB0PB1STARTALEOEA0A1A2.....PB5-VREFGNDcs59CS55PC0直流电机DCIN端WRRD200~207H208~20FH210~217H地址译码器A0A0A1A1A2A2 图4.2 温控系统线路图

4

四、接口芯片原理:

(一)ADC0809是采样分辨率为8位的、以逐次逼近原理进行模—数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。 1.内部结构

ADC0809是CMOS单片型逐次逼近式A/D转换器,内部结构如图13.22所示,它由8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器、逐次逼近 2.外部特性(引脚功能)

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转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。 CLK:时钟脉冲输入端。要求时钟频率不高于640KHZ。 REF(+)、REF(-):基准电压。 Vcc:电源,单一+5V。 GND:地。

3、ADC0809的工作过程

首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平

5

时,输出三态门打开,转换结果的数字量输出到数据总线上。

(二)8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。同时必须具有与外设连接的接口A、B、C口。由于8255可编程,所以必须具有逻辑控制部分,因而8255内部结构分为3个部分:与CPU连接部分、与外设连接部分、控制部分。

6

1、特性:

(1)一个并行输入/输出的LSI芯片,多功能的I/O器件,可作为CPU总线与外围的接口.

(2)具有24个可编程设置的I/O口,即使3组8位的I/O口为PA口,PB口和PC口.它们又可分为两组12位的I/O口,A组包括A口及C口(高4位,PC4~PC7),B组包括B口及C口(低4位,PC0~PC3).A组可设置为基本的I/O口,闪控(STROBE)的I/O闪控式,双向I/O3种模式;B组只能设置为基本I/O或闪控式I/O两种模式,而这些操作模式完全由控制寄存器的控制字决定.

2、引脚功能

RESET:复位输入线,当该输入端处于高电平时,所有内部寄存器(包括控制寄存器)均被清除,所有I/O口均被置成输入方式。

CS:芯片选择信号线,当这个输入引脚为低电平时,即/CS=0时,表示芯片被选中,允许8255与CPU进行通讯;/CS=1时,8255无法与CPU做数据传输.

RD:读信号线,当这个输入引脚为低电平时,即/RD=0且/CS=0时,允许8255通过数据总线向CPU发送数据或状态信息,即CPU从8255读取信息或数据。

WR:写入信号,当这个输入引脚为低电平时,即/WR=0且/CS=0时,允许CPU将数据或控制字写入8255。

D0~D7:三态双向数据总线,8255与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。

PA0~PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入锁存器。

PB0~PB7:端口B输入输出线,一个8位的I/O锁存器, 一个8位的输入输出缓冲器。

PC0~PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器, 一个8位的数据输入缓冲器。端口C可以通过工作方式设定而分成2个4位的端口, 每个4位的端口包含一个4位的锁存器,分别与端口A和端口B配合使用,可作为控制信号输出或状态信号输入端口。'

A0,A1:地址选择线,用来选择8255的PA口,PB口,PC口和控制寄存器.

当A0=0,A1=0时,PA口被选择; 当A0=0,A1=1时,PB口被选择; 当A0=1,A1=0时,PC口被选择;

7

当A0=1.A1=1时,控制寄存器被选择.

(三)8259的功能:就是在有多个中断源的系统中,接受外部的中断请求,并进行判断,选中当前优先级最高的中断请求,再将此请求送到cpu的INTR端;当cpu响应中断并进入中断子程序的处理过程后,中断控制器仍负责对外部中断请求的管理。 五、该系统的程序框图如图所示:

开始8255、8259初始化写中断向量表清除IR0对应的屏蔽位开中断STIADC0809开始转化ADC0809转化结束中断子程序实现温度的显示和控制温控程序框图

程序清单:

code segment

assume cs:code,ds:code start:

mov ax,cs mov ds,ax mov dx,213h mov al,80h

out dx,al;8255初始化

mov al,13h ;8259初始化 mov dx,208h

out dx,al ;ICW1初始化 mov al,08h

8

mov dx,209h

out dx,al ;ICW2初始化 mov al,01h

out dx,al ;ICW4初始化 in al,dx and al,0feh

out dx,al ;OCW1打开非屏蔽位 push ds mov ax,0 mov ds,ax

mov ax,offset intr

mov ds:word ptr[4*08h],ax mov ax,cs

mov ds:word ptr[4*08h+2],ax ;设置中断向量 pop ds

mov dx,200h mov ax,0 out dx,al ;开始转化 sti

rel:nop jmp rel

初始界面显示程序 print proc near push bx push ax push di push cx

lea bx,TABLE lea di,BUFDA

mov cl,11110111b ;位码 next:

mov dx,211h mov al,cl

out dx,al ;输出位码 mov al,[di] ;取段码 xlat

mov dx,210h ;输出段码 out dx,al push cx

mov cx,030h delay1:

loop delay1 ;软件延迟 pop cx

cmp cl,11111110b ;判断是否扫完一遍

jz r1 ;显示完一遍则返回 inc di

9

ror cl,1 ;循环右移一位 jmp next r1: pop cx pop di pop ax pop bx ret print endp intr proc near push ax push bx

mov dx,200h in al,dx mov dl,100 mul dl mov dl,255 div dl push ax call binidec call print pop ax cmp al,30 jl runoff cmp al,60 jl r2 runon:

mov dx,213h mov al,1 out dx,al jmp r2 runoff:

mov dx,213h mov al,0 out dx,al r2:

mov dx,200h mov al,0 out dx,al mov al,20h mov dx,208h out dx,al pop bx pop ax iret intr endp

binidec proc near

10

push dx push si mov ah,0 mov dl,100 div dl

mov si,offset BUFDA mov [si],al mov dl,10 mov al,ah mov ah,0 div dl inc si

mov [si],al mov al,ah inc si

mov [si],al pop si pop dx ret

binidec endp TABLE:

db 3fh ;\"0\"的段码 db 06h ;\"1\"的段码 db 5bh ;\"2\"的段码 db 4fh ;\"3\"的段码 db 66h ;\"4\"的段码 db 6dh ;\"5\"的段码 db 7dh ;\"6\"的段码 db 07h ;\"7\"的段码 db 7fh ;\"8\"的段码 db 6fh ;\"9\"的段码

db 39h ;\"C\"的段码 BUFDA:

db 0,0,0,10 code ends end start

六、实施结果

1. 数码管显示结果

前三位显示的是模拟温度值,后三位显示的是A/D转换后的数字量。 2.直流电机运行图

当温度高于60度时启动直流电动机

七、课程设计体会:

11

因篇幅问题不能全部显示,请点此查看更多更全内容