微机原理与接口技术课程设计温度报警器Word文件下载.docx

上传人:b****6 文档编号:20171899 上传时间:2023-01-17 格式:DOCX 页数:12 大小:160.39KB
下载 相关 举报
微机原理与接口技术课程设计温度报警器Word文件下载.docx_第1页
第1页 / 共12页
微机原理与接口技术课程设计温度报警器Word文件下载.docx_第2页
第2页 / 共12页
微机原理与接口技术课程设计温度报警器Word文件下载.docx_第3页
第3页 / 共12页
微机原理与接口技术课程设计温度报警器Word文件下载.docx_第4页
第4页 / 共12页
微机原理与接口技术课程设计温度报警器Word文件下载.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

微机原理与接口技术课程设计温度报警器Word文件下载.docx

《微机原理与接口技术课程设计温度报警器Word文件下载.docx》由会员分享,可在线阅读,更多相关《微机原理与接口技术课程设计温度报警器Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。

微机原理与接口技术课程设计温度报警器Word文件下载.docx

ADC0809包括一个8位的逐次逼近型的ADC部分,并提供一个8通道的模拟多路开关和联合寻址逻辑。

用它可直接输入8个单端的模拟信号,分时进行A/D转换,在多点巡回检测、过程控制等应用领域中使用非常广泛。

ADC0809的主要技术指标为:

·

分辨率:

8位

单电源:

+5V

总的不可调误差:

±

1LSB

转换时间:

取决于时钟频率

模拟输入范围:

单极性0~5V

时钟频率范围:

10KHz~1280KHz

ADC0809的外部管脚如图1所示,地址信号与选中通道的关系如表1所示。

图1ADC0809引脚图

表1地址输入线与模拟输入端的关系

ADDC

ADDB

ADDA

模拟信号通道

IN0

1

IN1

IN2

IN3

IN4

IN5

IN6

IN7

设计中使用通道0,故ADDC,ADDB,ADDA全部接0。

2.8254:

8254是Intel公司生产的可编程间隔定时器。

是8253的改进型,比8253具有更优良的性能。

8254具有以下基本功能:

(1)有3个独立的16位计数器;

(2)每个计数器可按二进制或十进制(BCD)计数;

(3)每个计数器可编程工作于6种不同工作方式;

(4)8254每个计数器允许的最高计数频率为10MHz(8253为2MHz);

(5)8254有读回命令(8253没有),除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容。

(6)计数脉冲可以是有规律的时钟信号,也可以是随机信号。

计数初值公式为n=fCLKi÷

fOUTi、其中fCLKi是输入时钟脉冲的频率,fOUTi是输出波形的频率。

图2是8254的内部结构框图和引脚图,它是由与CPU的接口、内部控制电路和三个计数器组成。

8254的工作方式如下述:

(1)方式0:

计数到0结束输出正跃变信号方式。

(2)方式1:

硬件可重触发单稳方式。

(3)方式2:

频率发生器方式。

(4)方式3:

方波发生器。

(5)方式4:

软件触发选通方式。

(6)方式5:

硬件触发选通方式。

图28254内部结构和引脚图

8254的控制字有两个:

一个用来设置计数器的工作方式,称为方式控制字;

另一个用来设置读回命令,称为读回控制字。

这两个控制字共用一个地址,由标识位来区分。

控制字格式如图3所示。

图38254方式控制字格式

利用8254的方式3—“方波发生器”,将对应发声频率的计数初值写入计数器,就可产生对应频率的方波。

计数初值的计算如下:

计数初值=输入时钟÷

输出频率

输入时钟采用系统总线上CLK(1.041667MHz),报警时写入初值为1047,发声频率即为1041667/1047Hz,然后调用一个软件延时程序,再将0001写入初值,发声频率变为1041667/1Hz。

由于正常人耳能听到的频率范围为20~20KHz,所以1041667Hz是听不到的,也就达到了消声的目的。

设计中正是不断执行“判断温度大于等于50℃→发声→消声→再判断”这个循环来实现温度报警的功能。

3.8255:

8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,用+5V单电源供电,能在以下三种方式下工作:

方式0--基本输入/出方式、方式1--选通输入/出方式、方式2--双向选通工作方式。

8255的内部结构及引脚如图4所示,8255工作方式控制字和C口按位置位/复位控制字格式如图5所示。

图48255内部结构及引脚图

图58255工作方式控制字格式及C口置位/复位控制字

实验系统中的键盘及数码管显示单元提供了4行×

4列共16个按键,4个7段数码管也接成扫描电路方式。

共用段位控制信号A~Dp,各自独立的公共端及列选择信号X1~X4,行扫描信号为Y1~Y4。

电路原理如图6所示。

图6键盘及数码管显示单元电路原理图

8255的A,B口均为输出且为方式0,其中PA0~PA3接X1~X4用来选中需要显示的数码管;

PB0~PB7接共用段位控制信号A~Dp,控制各个数码管具体显示的内容。

4.接线图:

综上所述,接线图如图7所示:

图7设计接线图

对于此图有以下两点需要说明:

(1)系统总线上的XA2,XA3分别接芯片的A0,A1,因此芯片的地址要在片选基础上左移两位,即*4,例如8255片选接IOY2,则方式字地址为IOY2+03H*4,A口地址为IOY2+00H*4;

(2)作图软件中ADC0809无CS端,故采用了如图的连接方式,实际中只需将系统总线IOY0与ADC0809的CS连接即可。

三、软件流程图

四、软件代码

***************根据CHECK配置信息修改下列符号值*******************************

IOY0EQU0E000H

IOY1EQU0E040H

IOY2EQU0E080H

******************************************************************************

AD0809EQUIOY0+00H*4

MY8254_0EQUIOY1+00H*4

MY8254_MODEEQUIOY1+03H*4

MY8255_AEQUIOY2+00H*4

MY8255_BEQUIOY2+01H*4

MY8255_MODEEQUIOY2+03H*4

DATASEGMENT

STRDB'

$'

DTABLEDB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,67H;

初始化缓冲用于存放键值

DATAENDS

CODESEGMENT

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATA

MOVDS,AX

MOVDX,MY8255_MODE;

初始化8255工作方式

MOVAL,80H

OUTDX,AL

MOVDX,MY8254_MODE;

初始化8254工作方式

MOVAL,37H

LOOP1:

MOVDX,AD0809;

启动A/D转换

MOVDX,OFFSETSTR;

在屏幕上显示字符串“Thetemperatureis:

MOVAH,9

INT21H

读出转换结果

INAL,DX

MOVCL,AL

CMPAL,32H;

判断是否小于32H

JBLOOP2

MOVDX,MY8254_0;

将计数初值1047装入8254计数器0,发出对应频率声音

MOVAL,47H

MOVAL,10H

CALLDALLY

将计数初值0001装入8254计数器0,停止发声

MOVAL,01H

MOVAL,00H

LOOP2:

MOVAL,0FDH;

选中X2对应的数码管

MOVDX,MY8255_A

MOVAH,00H;

将结果转换成十进制,将百位显示在屏幕上

MOVAL,CL

MOVBL,64H

DIVBL

MOVCH,AH

ADDAL,30H

MOVDL,AL

MOVAH,02H

SUBAL,30H;

将百位显示在数码管上,并调用延时子程序

MOVBX,OFFSETDTABLE

ANDAX,00FFH

ADDBX,AX

MOVAL,[BX]

MOVDX,MY8255_B

MOVAL,0FBH;

选中X3对应的数码管

MOVAL,CH;

将十位显示在屏幕上

MOVAH,00H

MOVBL,0AH

MOVDL,AL

将十位显示在数码管上,并调用延时子程序

MOVAL,0F7H;

选中X4对应的数码管

ADDCH,30H;

将个位显示在屏幕上

MOVDL,CH

SUBCH,30H;

将个位显示在数码管上,并调用延时子程序

MOVAL,CH

MOVDL,0DH;

回车,置光标到行首

MOVAH,1;

判断是否有按键按下

INT16H

JNZQUIT;

无按键则跳回继续循环,有则退出

JMPLOOP1

QUIT:

MOVAX,4C00H;

返回到DOS

DALLYPROCNEAR;

软件延时子程序

PUSHCX

PUSHAX

MOVCX,4000H

D1:

MOVAX,0600H

D2:

DECAX

JNZD2

LOOPD1

POPAX

POPCX

RET

DALLYENDP

CODEENDS

ENDSTART

五、设计收获

通过紧张有序的课程设计实践,不仅让我对ADC0809,8254,8255的原理,连接有了进一步的理解,更重要的是学会如何使用这些芯片解决实际问题,这让我的动手能力有了很大的提高,自信心也增强了。

在课程设计中能够自己动脑解决所遇到的问题,书本上的知识有了用武之地,巩固和深化了自己的知识结构。

设计中遇到了的问题基本上都是关于如何控制报警方面的,关于8254控制发声课本上没有涉及,通过查资料才知道采用方式3的方法。

第一次运行程序时,只要温度大于等于50℃时就开始报警,但不会停,于是想到了在每次报警之后加上一个消声的程序段,然而结果是温度超过50℃也不响,最终才想到在两者之前加上软件延时,才能基本上完美实现报警功能。

通过这次实践,我相信,只要自己在每一次实践中都能仔细思考,课程设计其实都不会很难,关键在于自己能不能认真思考,能不能亲自动手做实验,而不是想着其他人的劳动果实;

其次还要多操作,只有多操作才能从中发现问题,才能及时向老师和同学请教,解决问题,从而更好的掌握书本中知识。

还有通过这次实践也让我懂得了:

安排课程设计目的不在于你做了多少,不在于你做得好不好,关键在于你能否认真去对待,在于你能否通过这次设计对课本上知识有了更深刻的认识,在于能否从中学到书本上学不到的知识。

因此,我会认真地对待我的每一次实验。

在此,非常感谢马老师,感谢他精心的授课,使我们有做这次课程设计的基本知识。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

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

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