- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北京理工大学微机原理实验报告一
本科实验报告
实验名称: 基于并行接口的键盘控制
课程名称: 计算机原理与应用 任课教师: 实验地点: 实验教师: 实验类型: □ 原理验证
■ 综合设计
□ 自主创新 学生姓名: 学号/班级: 组 号: 学 院: 同组搭档: 专 业: 成 绩:
实验一 基于并行接口的键盘控制
一、实验目的
1、掌握简单并行接口(8255)的工作原理及使用方法。
2、了解小键盘的工作原理,学会设计小键盘的接口技术。
3、利用8255并行接口芯片作为小键盘的接口电路,掌握它们之间的线路连接。
4、程序实现实验系统上的4×4键盘输入。
二、实验内容与步骤
1、接线: PA0-PA3 /8255 接 行0-行3 /4×4键盘
PB0-PB3 /8255 接 列0-列3 /4×4键盘
CS /8255 接 YI/IO地址
2、编程:实现在按下小键盘上的任意键后,在微机屏幕上显示相应的字符。输入输出关系如下:
小键盘 显示 小键盘 显示
0 -- 0 8 -- 8
1 -- 1 9 -- 9
2 -- 2 A -- A
3 -- 3 B -- B
4 -- 4 C -- C
5 -- 5 D -- D
6 -- 6 E -- E
7 -- 7 F -- F
三、实验原理
1、熟悉8255A-5芯片工作方式的设置
(1)基本控制字
基本控制字的格式如下:
各位含义如下:
D7:设定工作方式标识,1有效。
D6、D5:A组方式选择:00--方式0 01--方式1 1X—方式2
D4:端口A功能(1=输入,0=输出)
D3:端口C高四位功能(1=输入,0=输出)
(2)端口C置位/复位控制字
端口C置位/复位控制字如下:
各位含义如下:
D7:位置0位置1标识,0有效。
D6、D5、D4:不用,可人任意值。
D3、D2、D1:端口C的每位选择,由111—000分别表示第7位—第0位。
D0:位置1/置0,1=置1,0=置0.
2、键盘阵列由8255芯片控制,并将行列连接到8255芯片的A口、B口,还需要连接8255芯片的片选到YI/IO地址(288H~28FH),以使键盘阵列由8255芯片控制。其线路连接图如下:
3、编程方法
对于片选信号根据设置的
(1)键的识别—行扫描法
第一步应该判断有键按下判断哪一个键按下,显示
参考流程如下
(2)的识别—行反转法
应该判断有键按下
行线输出,列线输入
线输出,行线输入
哪一个键被按下,显示
参考流程如下:
反转法示意图
data segment
tab1 DB F, E, D, C
tab2 DB B, A, 9, 8
tab3 DB 7, 6, 5, 4
tab4 DB 3, 2, 1, 0
kb DB 00eh, 00dh,00bh,007h
port equ 288h
data ends
stack segment
sta db 256 dup(?)
top equ size sta
stack ends
code segment
assume cs:code,ds:data,ss:stack
main proc far
mov ax,data
mov ds,ax
mov ax, stack
mov ss,ax
mov sp,top
mov dx, port+3 ;初始化8255
mov al
out dx,al
begin:
mov al,0
mov dx,
文档评论(0)