键盘扫描显示实验原理及分析报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

键盘扫描显示实验原理及分析报告

一、实验目的-------------------------------------------------------------1

二、实验要求-------------------------------------------------------------1

三、实验器材-------------------------------------------------------------1

四、实验电路-------------------------------------------------------------2

五、实验说明-------------------------------------------------------------2

六、实验框图-------------------------------------------------------------2

七、实验程序-------------------------------------------------------------3

八、键盘及LED显示电路---------------------------------------------14

九、心得体会------------------------------------------------------------- 15

十、参考文献--------------------------------------------------------------15

一、实验目的;

1、掌握键盘和显示器的接口方法和编程方法。

2、掌握键盘扫描和LED八段数码管显示器的工作原理。

二、实验要求:

在上一个实验的基础上,利用实验仪提供的键盘扫描电路和显示电路,做一个扫描键盘和数码显示实验,把按键输入的键码在六位数码管上显示出来。

实验程序可分成三个模块。

1、键输入模块:扫描键盘、读取一次键盘并将键值存入键值缓冲单元。

2、显示模块:将显示单元的内容在显示器上动态显示。

3、主程序:调用键输入模块和显示模块。

三、实验器材:

1、超想-3000TC综合实验仪 1 台

2、KEIL仿真器 1 台

3、计算机 1 台

四、实验电路:

五、实验说明:

本实验仪提供了一个6×4的小键盘,向列扫描码地址(0e101H)逐列输出低电平,然后从行码地址(0e103H)读回,如果有键按下,则相应行的值应为低,如果无键按下,由于上拉的作用,行码为高.这样就可以通过输出的列码和读取的行码来判断按下的是什么键。在判断有键按下后,要有一定的延时,防止键盘抖动。列扫描码还可以分时用作LED 的位选通信号。

六、实验框图:

列码

(0e101H)

行码

(0e103H)

七、实验程序:

;键盘扫描实验

OUTBIT equ 0e101h ; 位控制口

CLK164 equ 0e102h ; 段控制口(接164时钟位)

DAT164 equ 0e102h ; 段控制口(接164数据位)

IN equ 0e103h ; 键盘读入口

ORG 0000H

LJMP STAR

;==================================================================== KEY1: MOV 13H,#06H

MOV 12H,#20H

KEY2: MOV A,12H

CPL A

MOV R7,A

MOV DPTR,#0E101H

MOV A,R7

MOVX @DPTR,A

MOV A,12H

CLR C

RRC A

MOV 12H,A

MOV DPTR,#0E103H

MOVX A,@DPTR

MOV R7,A

MOV A,R7

CPL A

MOV R7,A

MOV A,R7

ANL A,#0FH

MOV 14H,A

DEC 13H

MOV R7,13H

MOV A,R7

JZ KEYDIS MOV A,14H

JZ KEY2 KEYDIS: MOV A,14H JZ TESTKEY5 MOV A,13H

ADD A,ACC

ADD A,ACC

MOV 13H,A

MOV A,14H

INC 13H

SJMP TESTKEY2

;;=================================================

;键盘扫描

TESTKEY: MOV A,14H

JNB ACC.2,TESTKEY1 INC 13H

INC 13H

SJMP TESTKEY2 TESTKEY1: MOV A,14H

JNB ACC.3,TESTKEY2 MOV A,#03H

ADD A,13H

MOV 13H,A TESTKEY2: MOV DPTR,#0E101H

CLR A

MOVX @DPTR,A TESTKEY3: MOV R7,#0AH LCALL MLOOP

LCALL MLOOP4

MOV A,R7

相关文档
最新文档