接口技术Word文档格式.docx

上传人:b****6 文档编号:18951564 上传时间:2023-01-02 格式:DOCX 页数:12 大小:162.61KB
下载 相关 举报
接口技术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

用做接口芯片,和小键盘相连。

8259中断控制器:

用于产生中断。

LED:

六个LED用于显示时、分、秒值。

4、设计思想

本系统设计的电子时钟以8088微处理器作为CPU,用8253做定时计数器产生时钟频率,8255做可编程并行接口显示时钟和键盘电路,8259做中断控制器产生中断。

在此系统中,8253可编程定时器/计数器,其定时与计数功能可由程序灵活地设定,设定后与CPU并行工作,不占用CPU的时间。

通道2工作在3方式下,提供计算一秒的中断请求信号。

此信号接8259的IR2,当中断到50次数后,CPU即处理,使液晶显示器上的时间发生变化。

其中8259只需初始化ICW1,其功能是向8259表明IRx输入是电瓶触发方式还是上升沿触发方式,是单片8259还是多片8259。

8259接收到信号后,产生中断信号送CPU处理。

具体方法

1.先在数据段开辟6个存储单元,用来存放时、分、秒的信息。

这6个存储单元分别对应时、分、秒的十位和个位。

调用子程序的清屏部分。

2.在主程序中分别对8253、8259、8255进行初始化编程。

8253的计数器0工作在方式3下,CLK0接19.2K的脉冲频率,经过19200次分频,在OUT0端口输出频率为1Hz的方波,产生秒脉冲。

3.8255的A口工作在方式0输入,B口工作在方式0输出,为基本的输入输出方式。

这部分为手动修改时间部分。

4.在中断服务程序中对中断次数进行统计。

当产生1次中断时,将秒的个位加1,判断是否到10,如到了则十位加1,个位清零;

再判断十位是否到6,如到了则十位清零,分的个位加1,同理对分、时做相应的处理。

该电子钟为12进制的。

5.八段数码管显示程序做为主程序。

调用延时程序并不断将时、分、秒对应存储单元的内容分别取出,送到相应的数码管显示出来。

8259芯片:

8259引脚图如下:

8259一共有28条引脚,其中

D7~D0——八条双向数据线;

WR(低电平有效)——写输入信号;

RD(低电平有效)——读输入信号;

CS(低电平有效)——片选输入信号;

A0——地址信号;

INT——中断请求信号;

INTA(低电平有效)——中断响应信号;

CAS0~CAS2——级联信号,形成一条专用8259A总线,以便多片8259A的级联;

SP/EN——从编程/允许级联。

在缓冲方式中,可用做输出信号以控制总线缓冲器的接收和发送。

在非缓冲方式中,作为输入信号用于表示主片还是从片;

IR0~IR7——外部中断请求输入线。

要求输入的中断请求信号是由低电平到高电平的上升沿(并保持高电平到CPU响应时为止)或者是高电平。

8259中断矢量地址与中断信号之间的关系如表所示:

中断序号

1

2

3

4

5

67

7

功能调用

20H

24H

28H

2CH

30H

34H

38H

3CH

矢量地址

20H--23H

24H--27H

28H--2BH

2CH--2FH

30H--33H

34H--37H

38H--3BH

3CH--3FH

说明

时钟

键盘

可用

串行口

8255芯片:

方式0—基本输入/输出方式

方式1—选通输入/输出方式

方式2—双向选通输入/输出方式

8255一共有40条引脚,其中

D7~D0——与CPU侧连接的八条双向数据线;

A0、A1——片内寄存器选择输入信号;

PA7~PA0——A口外设双向数据线;

PB7~PB0——B口外设双向数据线;

PC7~PC0——C口外设双向数据线;

RESET——复位输入信号

8255端口地址

信号线

寄存器

编址

IOY3

A口

60H

B口

61H

C口

62H

控制寄存器

63H

5、设计内容(必须包括一些硬件原理图,汇编程序代码,设计的结果截屏,设计流程图等图)

键盘扫描程序流程图:

汇编程序代码

codesegment

assumecs:

code,ds:

code

org100h

start:

pushcs

popds

movax,3

int10h

movax,0b800h

moves,ax

cld

Q0:

leadx,Tips;

提示输入时间

movah,9

int21h

;

输入当前时、分、秒值

callinput_bcd

movHH,al

movax,0e3ah;

'

:

movMM,al

movdh,al

movch,HH

cmpch,23H

jaQ1

movcl,MM

cmpcl,59H

cmpdh,59H

jbeQ2

Q1:

leadx,Err

jmpQ0

Q2:

movah,3

int1ah

callxssj

movah,4ch

input_bcd:

movcl,4

callkey

shlal,cl

movdl,al

addal,dl

ret

key:

movah,0

int16h

cmpal,'

0'

jbkey

9'

jakey

movah,0eh

subal,'

xssj:

movdi,(80*10+30)*2

T1:

movah,04;

CX=2009DX=0222

int1ah;

读取日期

出口参数:

CX=年,DX=月/日

moval,ch;

显示年

calldisp

moval,cl

moval,'

-'

stosb

moval,0ah;

绿色

moval,dh;

显示月

moval,dl;

显示日

moval,20h

movah,02;

CX=1252DX=0300

读取当前时间

CX=时/分;

DH=秒

显示时

moval,cl;

显示分

显示秒

movah,01

int16h;

读键盘

jzxssj;

无字符输入,继续显示时间

cmpal,1bh

jnzxssj

disp:

pushcx

movah,al

movcx,4

shral,cl

andal,0fh

oral,30h

moval,ah

popcx

Tipsdb'

InputCurrentTime'

db0dh,0ah,'

HH:

MM:

SS$'

Errdb0dh,0ah,'

InputError!

0dh,0ah,'

$'

HHdb0

MMdb0

codeends

endstart

运行结果如下:

6、总结体会

在该电子时钟的设计过程中,要使每一个单独的模块完成自己的子任务,同时还要和主程序匹配,例如:

通过8255A,CPU可直接同外设相连接,其负责CPU和外设之间的数据传送。

8259A可管理8级优先级中断源,通过开关,最多可管理64级优先权的中断源。

8253可编程定时器/计数器,其定时与计数功能可由程序灵活地设定,设定后与CPU并行工作,不占用CPU的时间。

在编写程序时,经常性的调试运行、修改完善。

在这里我仔细的翻看了许多资料,掌握了如何使用8253,8255和8259,如何去接他们的接口,并且如何写他们的接口程序。

在电子时钟的设计实现过程中,很多理论并不能拿来直接为我们所用,必须考虑到客观条件,根据已有的条件进行调整完善,在设计过程中注意到模块分解使得整个系统的实现难度得以降低,逻辑性也更强。

作为一个基础性的硬件实现系统,相信该电子时钟的实现会为许多新型实用系统提供理论与实践的技术支持。

此次设计是一个学习新知识、巩固加深所学课本理论知识的过程,它培养了我们综合运用知识的能力,独立思考和解决问题的能力。

它不仅加深了我对知识的理解,还让我感受到了设计电路的乐趣。

在这次设计中,我一点也不怕麻烦,反复设计、绘图与修改,因此对我来说,这次作业是非常有意义的。

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

当前位置:首页 > 人文社科 > 设计艺术

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

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