《计算机接口与通信技术》综合实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《计算机接口与通信技术》综合实验报告
院系部:
专业班级:
组长:
组员:
实验台号:
指导教师:
成绩:
实验日期:
实验1 8255A小键盘实验
一. 实验目的
(1)掌握8255A编程原理。
(2)了解键盘结构,学会读取键盘输入的方法。
二. 实验内容
用8255A来实现一个小键盘的输入识别(用行扫描法或反转法均可)。
(1)基于图再完成下述连接,即
将8255A的CS端与218~21F插孔相连,此时:
8255A的端口A地址为218H
端口B地址为219H
端口C地址为21AH
控制口地址为21BH
(2)编写程序,使得在小键盘上按键后,微机屏幕上有相应字符显示出来。
三. 仪器用具
四.实验接线图
五. 程序设计
流程图:
键盘扫描程序参考流程键盘主程序参考流程
程序代码:
DA TA SEGMENT
TABLE1 DW 0101H,0102H,0104H,0108H,0110H,0120H,0140H,0180H
DW 0201H,0202H,0204H,0208H,0210H,0220H,0240H,0280H
DW 0401H,0402H,0404H,0408H,0410H,0420H,0440H,0480H CHAR DB 'CDEFBA9845673210WXYSRPMG'
MESS DB 'PRESS A KEY ON THE SMALL KEYBOARD!',0AH,0DH DB 'IT WILL DISPLAY ON THE SCREEN ! ',0AH,0DH
DB 'PRESS R KEY, RETURN TO DOS !',0AH,0DH,'$' IOPORT EQU 0DC00H-200H
IO8255A EQU IOPORT+218H ;8255A口
IO8255B EQU IOPORT+219H ;8255B口
IO8255C EQU IOPORT+21BH ;8255控制端口
DA TA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DA TA,SS:STACKS
START: MOV AX,DA TA
MOV DS,AX
MOV DX,OFFSET MESS
MOV AH,09
INT 21H ;显示提示信息
Q1: MOV AL,82H ;送8255控制字,A出口,B入口
MOV DX,IO8255C
OUT DX,AL
Q2: MOV AL,00
MOV DX,IO8255A
OUT DX,AL ;A口输出行值
MOV DX,IO8255B
IN AL,DX ;B口读入列值
AND AL,0FFH
CMP AL,0FFH
JZ Q2
MOV BL,AL ;有键入,保存键值
MOV DI,0040 ;延迟,等待释放
BB: MOV CX,6000H
AA: LOOP AA
DEC DI
JNZ BB
MOV DX,IO8255C ;送8255控制字,B口出,A口入
MOV AL,90H
OUT DX,AL
MOV DX,IO8255B
MOV AL,BL
OUT DX,AL ;B口输出列值
MOV DX,IO8255A
IN AL,DX ;A口读入行值
CMP AL,0FFH
JNZ KEYN
KEYN: PUSH AX ;去抖
MOV DX,IO8255A
RELEA: IN AL,DX
CMP AL,0FFH
JNZ RELEA
POP AX
MOV AH,BL ;AH=列值,BH=行值
NOT AX ;键值AX求反
MOV SI,OFFSET TABLE1 ;送键值表指针
MOV DI,OFFSET CHAR ;送字符表指针
MOV CX,24
Q4: CMP AX,[SI] ;键值查表
JZ Q5
ADD SI,02 ;未查到,修改表指针
INC DI
LOOP Q4
JMP Q1
Q5: MOV DL,[DI] ;查到,显示该字符
CMP DL,'R'
JZ Q6
MOV AH,02H
INT 21H
JMP Q1
Q6: MOV AX,4C00H ;键值='R',返回DOS
INT 21H
CODE ENDS
六.试验方法与步骤
1.按实验要求连线
将8255A的CS端与218~21F插孔相连
2.编程,程序如上
3.运行程序
七.实验结果
八.讨论与结论
操作实验板上的小键盘按键会在计算机屏幕上进行显示,对键盘上的WXYS键都以空格响应,R退出,其
余显示对应字符。
实验2 8253计数器/定时器实验
一. 实验目的
掌握8253定时器的编程原理。
二. 实验内容
(1)用8253构成一个方波发生器或分频器,即基于图2-1再完成下述连接:
①将分频器74LS393的B端与8MHz信号相连;
②将分频器74LS393的A端接+5V;
③将8253的CLK0与8MHz分频得到的250KHz信号(74LS393的Q4端)相连;
和CLK1相连;
④将8253的OUT
⑤将8253的GATE0、GA TE l 接+5V;
⑥将8253的CS插孔接200~207;
(2)完成编程。将定时器0设为模式3(方波发生
器),定时器1设为模式2(分频器),定时器0的输出
脉冲作为定时器1的时钟输入。设置不同计数初值以改
变方波宽度和分频信号周期,在示波器中,观察定时器
0和l的输出波形及其关系,并画出(CLK、GA TE、
OUT)波形。
三. 仪器用具
四.实验接线图