东南大学-计算机输入输出系统-接口实验报告.doc

上传人:聆听****声音 文档编号:700727 上传时间:2023-04-29 格式:DOC 页数:24 大小:720KB
下载 相关 举报
东南大学-计算机输入输出系统-接口实验报告.doc_第1页
第1页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第2页
第2页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第3页
第3页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第4页
第4页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第5页
第5页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第6页
第6页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第7页
第7页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第8页
第8页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第9页
第9页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第10页
第10页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第11页
第11页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第12页
第12页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第13页
第13页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第14页
第14页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第15页
第15页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第16页
第16页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第17页
第17页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第18页
第18页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第19页
第19页 / 共24页
东南大学-计算机输入输出系统-接口实验报告.doc_第20页
第20页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

东南大学-计算机输入输出系统-接口实验报告.doc

《东南大学-计算机输入输出系统-接口实验报告.doc》由会员分享,可在线阅读,更多相关《东南大学-计算机输入输出系统-接口实验报告.doc(24页珍藏版)》请在冰点文库上搜索。

东南大学-计算机输入输出系统-接口实验报告.doc

计算机输入输出系统

接口实验报告

姓名:

学号:

东南大学计算机科学与工程学院、软件学院

SchoolofComputerScience&Engineering

CollegeofSoftwareEngineering

SoutheastUniversity

二016年6月

.1.

实验一环境熟悉与I/O地址译码

一、实验目的

掌握I/O地址译码电路的工作原理。

二、实验内容

将接口实验包中所带的EX-138.DSN文件用ISIS7打开。

改变A9~A3的接线方法,从而得到Y0;388H~38FH;Y1:

398H~39FH;……;Y7:

3F8H~3FFH。

并修改上一问的程序,以同样使得Y4#有效。

1)源程序

.8086

.MODELSMALL

.stack

.data

addressword3c8h

.code

start:

movax,@data

movds,ax

movdx,address

moval,0

outdx,al

jmp$

ENDstart

2)电路原理图(138译码部分)

3)运行结果贴图(138译码及上面两个273的输出)

实验二可编程中断控制器8259

一、实验目的

1.掌握8259的基本工作原理和编程方法。

2.深入了解中断的概念和实地址模式下中断处理程序的编写方法。

二、实验内容

将接口实验包中所带的EX-8259.DSN文件用ISIS7打开。

按手册接线并执行。

运行结果贴图(执行三次中断,每次中断后的8086寄存器的截图)

……

实验三可编程定时器计数器8253

一、实验目的

掌握8253的基本工作原理、编程方法及其应用。

二、实验内容

一)研究定时计数器(选)

1)源程序

.8086

.MODELSMALL

.DATA

.CODE

START:

MOVAX,@DATA

MOVDS,AX

MOVDX,226H

MOVAL,00010000B;T/C0,leastsignificantbyteonly,mode0,Binary

OUTDX,AL

MOVAL,5;Initialcount=5

MOVDX,220H

OUTDX,AL

MOVAH,4CH

INT21H

ENDSTART

2)讨论题

如果把方式0改成方式1,电路不动,则按下BUTTON后,计数器值会否减1?

为什么?

不会,因为方式1下GATE=1或0没有影响,只有GATE的上升沿才会触发计数器开始计数,而该电路中GATE时钟为1,所以计数器不会减1.

二)信号发生器

1)源程序

.8086

.MODELSMALL

.DATA

.CODE

START:

MOVAX,@DATA

MOVDS,AX

;InitailizeT/C0

MOVDX,226H

MOVAL,00110110B;T/C0,leastsignificantbytefirst,mode3,binary

OUTDX,AL

MOVDX,220H

MOVAX,1000;Initialcount=1000

OUTDX,AL

MOVAL,AH

OUTDX,AL

;InitializeT/C1

MOVDX,226H

MOVAL,01110110B;T/C1,leastsignificantbytefirst,mode3,binary

OUTDX,AL

MOVDX,222H

MOVAX,1000;Initialcount=1000

OUTDX,AL

MOVAL,AH

OUTDX,AL

;InitializeT/C2

MOVDX,226H

MOVAL,10010110B;T/C2,leastsignificantbyteonly,mode3,binary

OUTDX,AL

MOVDX,224H

MOVAL,5;Initialcount=5

OUTDX,AL

MOVAH,4CH

INT21H

ENDSTART

2)接线原理图

3)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)

(1)1秒为周期,占空比1:

2的方波,现将1MHz的方波输入CLK0,设C/T0计数值为1000

工作方式为方式3,则OUT0输出的信号为1KHz,占空比1:

2的方波,再将OUT0输入CLK1,设C/T1计数值为1000,工作方式为方式3,则OUT1输出的信号为1Hz,占空比1:

2的方波。

(2)产生5秒为周期,占空比为2:

5的方波时,如果只将OUT1输入CLK2,C/T2计数初始值为5,工作方式为方式3,则OUT2输出的信号为5秒为周期,占空比为3:

5的方波,要产生占空比为2:

5的方波,还需要在OUT2上加一个非门。

(3)产生5秒为周期的波形,其中前2秒频率为1KHz的方波,后3秒为低电平,该波形可以看出5秒为周期,占空比为2:

5的方波和1KHz的方波的叠加,因此只需将OUT0和OUT2#相与即可。

实验五七段数码管实验

一、实验目的

掌握数码管显示数字的原理,进一步复习8255的应用。

二、实验内容

1.静态显示(选)。

1)源程序

.8086

.MODELSMALL

.DATA

BUFFBYTE3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H

.CODE

START:

MOVAX,@DATA

MOVDS,AX

MOVDX,206H

MOVAL,10001001B

OUTDX,AL

AGAIN:

MOVDX,204H

INAL,DX

NOTAL

MOVBX,OFFSETBUFF

XLAT

MOVDX,200H

OUTDX,AL

JMPAGAIN

ENDSTART

2)接线原理图

3)运行结果截图

2.动态显示。

1)源程序

.8086

.MODELSMALL

.DATA

VARBYTE?

BUFFBYTE3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H

.CODE

START:

MOVAX,@DATA

MOVDS,AX

MOVDX,206H;Addressof82C55is200H,202H,204H,206H

MOVAL,10001001B;PortAinmode0,ouput,PortBinmode0,output,Port

OUTDX,AL;Cinmode0,input

AGAIN:

MOVDX,204H;GetthesetofswitchfromportC

INAL,DX

NOTAL

MOVVAR,AL;Storethesetofswitchin'VAR'

MOVDX,202H

MOVAL,02H;SetS1=1,outputtensdigit

OUTDX,AL

MOVCL,4

MOVAL,VAR;shiftAL4-bitleft

SHRAL,CL

MOVBX,OFFSETBUFF

XLAT

MOVDX,200H

OUTDX,AL

MOVCX,64H

LOOP$;Causeadelaybeforedisplayunitsdigit

MOVDX,202H

MOVAL,01H;SetS2=1,outputunitsdigit

OUTDX,AL

MOVAL,VAR

ANDAL,0FH

MOVBX,OFFSETBUFF

XLAT

MOVDX,200H

OUTDX,AL

MOVCX,64H

LOOP$;Causeadelaybeforethecirculation

JMPAGAIN

ENDSTART

2)接线原理图

3)运行结果截图

4)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)

编程心得:

输出十位数段码与输出个位数段码之间需要产生延迟,在程序中可以通过MOVCX,64HLOOP$来实现。

XLAT是查表指令:

以DS:

[BX+AL]为地址,提取存储器中的一个字节再送入AL。

将寄存器左移或者右移时,移动的位数要存在CL寄存器中

实验六交通灯控制实验

一)实验目的

通过并行接口8255实现十字路口交通灯的模拟控制,进一步掌握对并行口的使用和中断的使用。

二)交通灯变化规律

十字路口交通灯的变化规律要求

1)南北路口的绿灯、东西路口的红灯同时亮10秒,然后

2)南北路口的黄灯闪烁2次(闪烁周期2秒),同时东西路口的红灯继续亮,然后

3)南北路口的红灯、东西路口的绿灯同时亮10秒,然后

4)南北路口的红灯继续亮,同时东西路口的黄灯2次(闪烁周期2秒),然后

5)转1重复。

三)实验内容

1.红黄绿三色交通灯控制。

将接口实验包中所带的EX-825X-1.DSN文件用ISIS7打开,将D6、D5、D4作为南北路口的交通灯与PA7、PA6、PA5相连;D3、D2、D1作为东西路口的交通灯与PA2、PA1、PA0相连(方式0)。

利用8253产生1秒的中断信号(系统已经为CLK0提供了一个1MHz的时钟输入),在中断处理程序中用程序处理10秒延迟和两次黄灯闪烁的问题。

编程使六个灯按交通灯变化规律燃灭。

1)源程序

.8086

.MODELSMALL

.DATA

COUNTBYTE10

STATEBYTE1

.CODE

START:

MOVAX,@DATA

MOVDS,AX

;Initialize8259A

MOVAL,13H;ICW1,Edgetriggered,single,ICW4isneeded

MOVDX,210H

OUTDX,AL

MOVAL,60H;ICW2,theinterruptvectoris60H

MOVDX,212H

OUTDX,AL

MOVAL,00000001H;ICW4

OUTDX,AL

;Initialize8253A

MOVAL,00110110B;T/C0,leastsignificantbytefirst,mode3,Binary

MOVDX,226H

OUTDX,AL

MOVAX,1000;conut0=1000

MOVDX,220H

OUTDX,AL

MOVAL,AH

OUTDX,AL

MOVAL,01110110B;T/C1,leastsignificantbytefirst,mode3,Binary

MOVDX,226H

OUTDX,AL

MOVAX,1000;count1=1000

MOVDX,222H

OUTDX,AL

MOVAL,AH

OUTDX,AL

;Initialize82C55

MOVAL,10000000B

MOVDX,206H

OUTDX,AL

;InitailizeInterruptVectorTable

MOVAX,@DATA

MOVDS,AX

CLI

MOVAX,0

MOVES,AX

MOVSI,0

MOVCX,255

l:

MOVAX,OFFSETSERVICE

MOVES:

[SI],AX

MOVAX,SEGSERVICE

MOVES:

[SI+2],AX

ADDSI,4

LOOPl

MOVAX,OFFSETSERVICE

MOVES:

[SI],AX

MOVAX,SEGSERVICE

MOVES:

[SI+2],AX

STI

JMP$

SERVICEPROC;Interrupterhandler

PUSHAX

PUSHDX

PUSHDS

STI

MOVAX,@DATA

MOVDS,AX

MOVAL,STATE

NEXT3:

CMPAL,1;StateS1

JNZNEXT

MOVDX,200H

MOVAL,10000001B;Northandsouthdirectionofgreenlight

OUTDX,AL;Westandeastdirectionofredlight

MOVAL,COUNT

DECAL

MOVCOUNT,AL

CMPAL,0

MOVCOUNT,AL;IfCOUNT=0,COUNT=4,STATE=2

JNZEXIT

MOVAL,4

MOVCOUNT,AL

MOVAL,2

MOVSTATE,AL

JMPEXIT

NEXT:

CMPAL,2;StateS2

JNZNEXT1

MOVAL,COUNT

TESTAL,01H;Northandsouthdirectionofyellowlightflashing

JZYELLOW1;Westandeastdirectionofredlight

MOVDX,200H

MOVAL,00000001B

OUTDX,AL

JMPRESUME1

YELLOW1:

MOVDX,200H

MOVAL,01000001B

OUTDX,AL

RESUME1:

MOVAL,COUNT

DECAL

MOVCOUNT,AL

CMPAL,0;IfCOUNT=0,COUNT=10,STATE=3

JNZEXIT

MOVAL,10

MOVCOUNT,AL

MOVAL,3

MOVSTATE,AL

JMPEXIT

NEXT1:

CMPAL,3;StateS3

JNZNEXT2

MOVDX,200H

MOVAL,00100100B;Northandsouthdirectionofredlight

OUTDX,AL;Westandeastdirectionofgreenlight

MOVAL,COUNT

DECAL

MOVCOUNT,AL

CMPAL,0;IfCOUNT=0,COUNT=4,STATE=4

JNZEXIT

MOVAL,4

MOVCOUNT,AL

MOVAL,4

MOVSTATE,AL

JMPEXIT

NEXT2:

CMPAL,4;StateS4

JNZNEXT3

MOVAL,COUNT

TESTAL,01H

JZYELLOW2;Northandsouthdirectionofredlight

MOVDX,200H;Westandeastdirectionofyellowlightflashing

MOVAL,00100000B

OUTDX,AL

JMPRESUME2

YELLOW2:

MOVDX,200H

MOVAL,00100010B

OUTDX,AL

RESUME2:

MOVAL,COUNT

DECAL

MOVCOUNT,AL

CMPAL,0;IfCOUNT=0,COUNT=10,STATE=1

JNZEXIT

MOVAL,10

MOVCOUNT,AL

MOVAL,1

MOVSTATE,AL

EXIT:

CLI

MOVAL,20H;SendEOI

MOVDX,210H

OUTDX,AL

POPDS

POPDX

POPAX

IRET

SERVICEENDP

ENDSTART

2)接线原理图

3)运行结果截图

4)编程与调试心得(遇到的问题和解决的办法,以及获得的收获)

编程心得:

在实现S2和S4的黄灯闪烁时,在每次调用中断处理程序时通过判断COUNT的奇偶性,如果COUNT是偶数,则使黄灯点亮,如果COUNT是奇数,则使黄灯熄灭

2.带倒计时的交通灯控制(选):

将接口实验包中所带的EX-825X-2.DSN文件用ISIS7打开,将D6、D5、D4作为南北路口的交通灯与PA7、PA6、PA5相连;D3、D2、D1作为东西路口的交通灯与PA2、PA1、PA0相连(方式0)。

PC口的PC0~PC6作为输出口(方式0输出)连接7段数码管的段码,PB0、PB1连接数码管的S1,S2来选择显示的位。

利用8253产生1秒的中断信号,在中断处理程序中用程序处理10秒延迟和两次黄灯闪烁的问题。

编程使六个灯按交通灯变化规律燃灭,同时数码管显示倒计时的值(10~0,4~0)。

1)源程序

.8086

.MODELSMALL

.DATA

COUNTBYTE11

STATEBYTE1

VARBYTE?

BUFFBYTE3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,3FH

.CODE

START:

MOVAX,@DATA

MOVDS,AX

;Initialize8259A

MOVAL,13H;ICW1,Edgetriggered,single,ICW4isneeded

MOVDX,210H

OUTDX,AL

JMPSHORT$+2

MOVAL,60H;ICW2,theinterruptvectoris60H

MOVDX,212H

OUTDX,AL

JMPSHORT$+2

MOVAL,00000001H;ICW4

OUTDX,AL

JMPSHORT$+2

;Initialize8253A

MOVAL,00110

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

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2