实验八键盘接口设计Word下载.docx

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

实验八键盘接口设计Word下载.docx

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

实验八键盘接口设计Word下载.docx

注:

发光二极管点亮代表数字键对应的bit位为1。

四.编程提示

1.在MCS8086软件平台上编写宏汇编程序与在MASM611环境下编写源程序在格式上稍有区别。

此平台不需要定义数据段、堆栈段,只需要定义代码段。

数据段的内容在程序后面,codeends之前定义即可。

代码段定义方式为:

assumecs:

code

codesegmentpublicorg100h

start:

..

.(程序内容

codeends

endstart

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

code之前定义即可。

2

2。

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

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

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

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

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

注:

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

否则不能通过链接。

五.硬件连接

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

表1

六.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端口输入出outdx,al

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

wait2:

获得列值

判断按键是否松开

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