当前位置:首页 > tpc-h教师实验指导书
四、接口实验部分:
几点约定
1。实验电路介绍中凡不加“利用通用插座”说明的均为实验台上已固定电路。 2。实验电路连线在图中均用虚线表示,实线为已连好电路。
实验一 I/O地址译码
一、实验目的
掌握I/O地址译码电路的工作原理。
二、实验原理和内容
实验电路如图11所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,?? 当CPU执行I/ O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。 例如:执行下面两条指令 MOV DX,2A0H
OUT DX,AL(或IN AL,DX)
Y4输出一个负脉冲,执行下面两条指令 MOV DX,2A8H
OUT DX,AL(或IN AL,DX) Y5输出一 个负脉冲。
图11
利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。
三、编程提示
1、实验电路中D触发器CLK端输入脉冲时,上升沿使Q端输出高电平L7发光,CD端加低电平L7灭。
2、参考程序:
code segment assume cs: code start: mov dx,2a0h out dx,al
call delay ;调延时子程序 mov dx,2a8h out dx,al
call delay ;调延时子程序 mov ah,1
int 16h
je start ;无键按下转start mov ah,4ch int 21h
delay proc near ;延时子程序 mov bx,5 lll: mov cx,0 ll: loop ll dec bx jne lll ret delay endp code ends
end start
实验二 简单并行接口
一、实验目的
掌握简单并行接口的工作原理及使用方法。
二、实验内容
1、按下面图12简单并行输出接口电路图连接线路(74LS273插通用插座,74LS32用实验台上的“或门”)。74LS273为八D触发器,8个D输入端分别接数据总线D0~D7,8个Q输出端接LED显示电路L0~L7。 2、编程从键盘输入一个字符或数字,将其ASCⅡ码通过这个输出接口输出,根据8个发光二极管发光情况验证正确性。
3、按下面图13简单并行输入接口电路图连接电路(74LS244插通用插座,74LS32用实验台上的“或门”)。74LS244为八缓冲器,8个数据输入端分别接逻辑电平开关输出K0~K7,8个数据输出端分别接数据总线D0~D7。
4、用逻辑电平开关预置某个字母的ASCⅡ码,编程输入这个ASCⅡ码,并将其对应字母在屏幕上显示出来。
图12 图13
三、编程提示
1、上述并行输出接口的地址为2A8H,并行输入接口的地址为2A0H,通过上述并行接口电路输出数据需要3条指令:
MOV AL, 数据 MOV DX,2A8H OUT DX,AL
通过上述并行接口输入数据需要2条指令: MOV DX,2ADH
IN AL,DX
2、参考流程图
开 始开 始等待键盘输入自端口2A0H输入ASCII码保存输入ASCII码至DL是ESC吗?N从端口2A8H输出其ASC码Y显示ASCII码对应的字符有键按下吗?Y结 束结 束N
图14 参考程序1 图15 参考程序2
3、参考程序1:
code segment
assume cs:code
start: mov ah,2 ;回车符 mov dl,0dh int 21h
mov ah,1 ;等待键盘输入 int 21h
cmp al,27 ;判断是否为ESC键 je exit ; mov dx,2a8h ; out dx,al
jmp start ;exit: mov ah,4ch ; int 21h code ends end
4、参考程序2: code segment assume cs:code
start: mov dx,2a0h ; in al,dx
mov dl,al ; mov ah,02 ; int 21h
mov dl,0dh ; int 21h
mov dl,0ah ; int 21h
mov ah,1 ; int 16h
je start ;exit: mov ah,4ch ; int 21h code ends end
若是则退出
若不是,从2A8H输出其ASCII码转start 返回DOS 从2A0H输入一数据 将所读数据保存在DL中 显示ASCII码为DL的字符 显示回车符 显示换行符 是否有键按下 若无,则转start 返回DOS
共分享92篇相关文档