实验八键盘接口设计Word格式文档下载.docx

上传人:b****5 文档编号:16622925 上传时间:2022-11-24 格式:DOCX 页数:13 大小:364.38KB
下载 相关 举报
实验八键盘接口设计Word格式文档下载.docx_第1页
第1页 / 共13页
实验八键盘接口设计Word格式文档下载.docx_第2页
第2页 / 共13页
实验八键盘接口设计Word格式文档下载.docx_第3页
第3页 / 共13页
实验八键盘接口设计Word格式文档下载.docx_第4页
第4页 / 共13页
实验八键盘接口设计Word格式文档下载.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

实验八键盘接口设计Word格式文档下载.docx

《实验八键盘接口设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《实验八键盘接口设计Word格式文档下载.docx(13页珍藏版)》请在冰豆网上搜索。

实验八键盘接口设计Word格式文档下载.docx

代码段定义方式为:

assumecs:

code

codesegmentpublic

org100h

start:

.

.(程序内容)

codeends

endstart

预定义方式与MASM611的预定义方式相同,在assumecs:

code之前定义即可。

2.程序操作必须与硬件结构相符,请认真分析3×

8矩阵键盘的原理线路图,如图2。

 

图2‘0-F数字键’在3×

8矩阵键盘中的分布位置图

3.做键盘检测时要注意加延时去抖动的操作,避免一次闭合被检测为多次按键按下。

4.编写程序时,要根据操作的需要灵活地设置8255A的各端口的工作方式。

5.程序设计时,可将各键对应的键值(行线值、列线值)放在一个表中,将要显示的0~F字符放在另一个表中,通过查表的方式来确定按下的是哪一个键并正确显示出来。

编写程序时,在org100h的下一行,必须写上标号start:

,否则不能通过链接。

五.硬件连接

实验箱上的线路连接如表1所示。

表1

8255A的端口和控制线

对应的连接点

备注

PB0

KA10

矩阵键盘的列线

PB1

KA11

PB2

KA12

PA0

RL10

矩阵键盘的行线

PA1

RL11

PA2

RL12

PA3

RL13

PA4

RL14

PA5

RL15

PA6

RL16

PA7

RL17

PC0

LED1

开关量输出电路发光二极管

PC1

LED2

PC2

LED3

PC3

LED4

8255CS

CS0

系统片选

六.EL-MUT-III实验箱使用说明

EL-MUT-III实验箱用一根交叉串口线和微型计算机机箱相连。

将8086CPU模块插在实验箱右上角的插槽上(注意方向),同时接上实验箱的电源线。

打开电源,此时实验箱的左上角数码管应显示1996_7,几秒钟后变化,当实验箱通过软件(MCS8086)与计算机连接成功时变为显示C_,当连接没有成功时,显示P_。

七.示例源程序KB.ASM

程序功能:

用行翻转法识别矩阵键盘上的闭合键,做到在键盘上每按一个数字键(0~F),用发光二极管将该数字键对应的二进制代码显示出来。

硬件连接:

PA[0..7]←→RL[10..17],PB[0..2]←→KA[10..12]

PC[0..3]←→LED[8..5]/LED[4..1],8255CS←→CS0

源程序代码:

paequ04a0h;

定义端口A的地址

pbequ04a2h;

定义端口B的地址

pcequ04a4h;

定义端口C的地址

pctequ04a6h;

定义控制端口的地址

codesegmentpublic

org100h

moval,82h;

初始化8255A,方式0,A端口输出,B端口输入

movdx,pct

outdx,al

movdx,pc

moval,0ffh

wait:

moval,00h

movdx,pa

outdx,al;

a端口输出00

movdx,pb

inal,dx;

b端口获得数据

cmpal,07h;

判断是否有按键按下

jzwait;

无按键按下,等待

pushax;

有键按下,将数据压栈保护

按键的列值存于al,此时压入堆栈

movcx,16eah

dly:

loopdly;

延时,消抖动

moval,90h;

行反转,再次初始化8255A,方式0,A端口输入,B端口输入出

popax

b端口输出列值

获得行值

popbx;

将列值取出

movah,bl;

ah为列值

movsi,offsettable

movdi,offsetchar

movcx,16

tt:

cmpax,[si];

比较按键值与table里的数据

jznn;

相等,跳转

deccx

jzstart;

没有相等的值,重新开始

addsi,2

incdi

jmptt;

继续查找比较

nn:

movcl,[di];

按照输入的键值,找到相应的输出值

moval,82h

movdx,pct

outdx,al

wait2:

获得列值

cmpal,07h;

判断按键是否松开

jnzwait2;

未松开,等待

movdx,pc;

已松开,将按键值输出

notcl

moval,cl

jmpwait

tabledw06feh,06fdh,06fbh,06f7h,06bfh,067fh,03feh,03fdh,03efh,

dw03dfh,03bfh,037fh,05fbh,05f7h,05efh,05dfh

chardb00h,01h,02h,03h,04h,05h,06h,07h,08h,09h,0ah,0bh,0ch,0dh,0eh,0fh

八.预习要求

1.分析示例程序,掌握8255A初始化编程的方法。

2.按要求编写相应功能的键盘接口程序,要求包括以下内容:

(1)程序部分

●程序采用的主要算法。

●程序框图及源程序清单。

(2)硬件部分

●原理线路与实际接线图。

●主要调试步骤及测试方案。

九.实验报告要求

示例程序

●程序框图,主要算法

●测试操作与结果分析

整理编写好的程序,要求包括以下内容:

●程序采用的主要算法。

●程序框图及源程序清单。

●原理线路、接口电路工作过程分析和实际的接线图。

●主要调试步骤、程序功能测试方案和测试结果。

●实验中遇到的主要问题、解决方法及其分析说明。

【附录】

MCS8086软件的安装和使用

一、软件的安装

1、找到文件夹MCS8086,双击setup.exe,开始安装。

2、点击Yes,下一步。

3、Username、CompanyName随意填写,SerialNumber填123456789,点next下一步。

4、此处选择安装目录,默认路径即可,Next。

5、此处默认第一项Typical即可。

6、单击Finish,安装完成。

7、此时,桌面上会出现图示快捷方式

二、软件的使用

双击打开快捷方式

,出现如下界面。

点击确定即可

进入主界面之后,有两种方式进行操作,第一种方式是通过下图所示的菜单栏。

第二种方式是通过菜单栏下方的快捷工具栏,如下图所示:

通过这两种方式实现的操作时相同的,可自行选择一种即可。

1.新建文件

选择:

文件→新建,或者点击工具栏的“新建”图标,之后即可开始编辑文件。

文件保存为.asm格式。

2.打开文件

文件→打开,或者点击工具栏的“打开”图标:

选择文件,单击‘打开’。

3.编译、链接

文件编辑结束后,工具栏将出现如图所示,此时,即可开始进行编译、链接,这两步可以一次完成。

如图所示两种方式都可以完成。

选择之后,将出现编译、链接提示。

如果程序有错,将出现提示信息。

此时,点击程序界面,将出现红色区域提示错误所在的行。

4.连接硬件、下载程序

程序编译、链接通过后,就可以与硬件连接,下载程序了。

(此时确保实验箱与计算机已连接并加电)

运行→连接设置。

单击‘确定’.

串口选择默认的COM1,波特率选择默认的9600即可,如果提示失败,则修改串口(COM2/COM3),视实际情况而定。

设置串口后,即可通过以下两种方式中的一种进行系统复位。

在弹出的提示窗口中,单点确定,随后马上按实验箱上右下角(在3×

8键盘的下方)的复位键(RST)。

此时,将提示复位成功,同时程序通过交叉串口线下载到了实验箱上的存储器中等待执行。

右下角将可看到通讯联系的提示。

同时,程序代码界面将出现如图所示绿色光带在源程序所在的第一行。

5.程序运行

程序下载完成后,即可运行程序。

如上图所示,程序运行有多种方式,可自行选择,有全速运行、单步运行、运行到光标处、从光标处开始运行、跟踪运行等。

可以通过上图所示的菜单栏选择,也可以通过单击下图所示的工具栏选择。

运行程序时,可在界面左边查看寄存器的值,对于调试程序非常方便。

6.调试方式

可以选择“单步运行”,或者“运行到光标处”运行程序,同时结合查看左边的寄存器,进行程序的调试。

提示:

对程序进行修改后,须要点击——保存,再重新编译、链接,同时进行系统复位,否则修改不能生效。

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

当前位置:首页 > 高等教育 > 教育学

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

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