单片机
返回首页

基于单片机的键盘显示设计

2011-02-16

一、实验目的
   1、掌握8031系统中,扩展8279键盘显示接口的方法。
2、掌握8279工作原理和编程方法。
二、实验内容
1.实验原理图:


 
2、实验内容
     在外接的键盘功能板上,按数字键,数码管上应相应能显示按下的数字,按下功能键,能相应执行其它功能程序。
3、实验说明
利用8279可以实现对键盘/显示器的自动扫描,以减轻CPU负担,具有显示稳定,程序简单,不会出现误动作等特点。本实验利用8279实现显示扫描自动化。
三、程序
程序清单:
              ORG     08F0H
HA7S:    MOV    SP,#53H
              MOV     DPTR,#0B001H
              MOV    A,#00H
              MOVX        @DPTR,A
              MOV    A,#32H
              MOVX        @DPTR,A
              MOV    A,#0DFH
              MOVX        @DPTR,A
HA7S1:  MOVX        A,@DPTR
              JB         ACC.7,HA7S1
              MOV    DPTR,#0B000H
              MOV    A,#0C8H
              MOVX        @DPTR,A
              INC      DPTR
              MOV    A,#80H
              MOVX        @DPTR,A
HA7S2:  MOV    30H,#80H
              MOV    31H,#40H
HA7S3:  MOV    DPTR,#0B001H
              MOVX        A,@DPTR
              ANL     A,#07H
              CJNE     A,#00H,HA7S4
              AJMP    HA7S3
HA7S4:  MOV    DPTR,#0B000H
              MOVX        A,@DPTR
              MOV    B,A
              MOV    R1,#00H
              MOV    DPTR,#KEYTAB
HA7S5:  MOV    A,#00H
              MOVC  A,@A+DPTR
              CJNE    A,B,HA7S6
              AJMP   HA7SA
HA7S6:  INC      DPTR
              INC      R1
              MOV    A,R1
              JB         ACC.4,HA7S7
              AJMP   HA7S5
HA7S7:  MOV    R1,#00H
       MOV    DPTR,#KEYTAB1
HA7S8:  MOV    A,#00H
              MOVC        A,@A+DPTR
              CJNE    A,B,HA7S9
              AJMP   HA7SC
HA7S9:  INC      DPTR
              INC      R1
              MOV    A,R1
              JNB      ACC.2,HA7S8
              AJMP   HA7SD
HA7SD: LJMP    HA7S
HA7SA: MOV    A,30H
              MOV    DPTR,#0B001H
              MOVX        @DPTR,A
              MOV    A,R1
              MOV    R0,31H
              MOV    @R0,A
              INC      31H
              MOV    DPTR,#CDATA
              MOVC        A,@A+DPTR
              MOV    DPTR,#0B000H
              MOVX        @DPTR,A
              INC      30H
              MOV    A,30H
              CJNE    A,#88H,HA7SB
              LJMP    HA7S2
HA7SB: AJMP   HA7S3
HA7SC: MOV    DPTR,#KJPADDR
              MOV    A,R1
              RLA
              ADD     A,R1
              JMP      @A+DPTR
KJPADDR:LJMP       LOOP0
              LJMP    LOOP1
              LJMP    LOOP2
KEYTAB: DB 0C1H,0C8H,0C9H,0D0H,0D8H,0E0H,0C2H,0CAH,0D1H,0D9H
              DB 0DAH,0C3H,0CBH,0D2H,0D3H,0DBH
KEYTAB1:DB 0E3H,0E2H,0E1H
CDATA: DB 0CH,9FH,4AH,0BH,99H,29H,28H,8FH,08H,09H,88H,38H
              DB 6CH,1AH,68H,0E8H
LOOP0: MOV    R5,#0CH
              LJMP     DISPC
LOOP1: MOV    R5,#9FH
              LJMP    DISPC
LOOP2: MOV    R5,#4AH
DISPC:  MOV    R6,#80H
DISPC1: MOV   A,R6
              MOV    DPTR,#0B001H
              MOVX        @DPTR,A
              MOV    A,R5
              MOV    DPTR,#0B000H
              MOVX        @DPTR,A
              MOV    R2,#20H
              LCALL        DELAY
              MOV    A,#0FFH
              MOVX        @DPTR,A
              INC      R6
              CJNE    R6,#88H,DISPC1
              AJMP   DISPC
DELAY: PUSH   02H
DELAY1: PUSH        02H
DELAY2: PUSH        02H
DELAY3: DJNZ        R2,DELAY3
              POP      02H
              DJNZ    R2,DELAY2
              POP      02H
              DJNZ    R2,DELAY1
              POP      02H
              DJNZ    R2,DELAY
              RET
              END
四、实验步骤
    ①将DVCC实验系统上J8插座与键盘显示板用扁平电缆相连。
    ②将KEY区D0—D7用8芯排线连到BUS2区XD0—XD7上。
    ③将KEY区WR、RD、ALE分别连到BUS3区XWR、XRD、ALE上。
    ④KEY区A0连到BUS1区XA0上。
    ⑤KEY区RST连到MP区SP上。
    ⑥KEY区KCS连到SELET区的Y3上。
    ⑦在DVCC实验系统上按F2键进入仿真1态,即显示“P.....”,从起始地址08F0H开始连续执行程序。
⑧功能板上数码管显示P,按下功能板上的数字键,数码管上显示相应的数字,按下功能键,数码管上显示相应的0字循环(LAST键)、1字循环(NEXT键)、2字循环(EXEC键)。

进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 简洁的过零调功器电路设计与分析

  • 单稳态控制电路设计与分析

  • 光控电路设计与分析

  • 永不缺相启动运行的电动机控制电路

  • 开关电源的基本组成及工作原理

  • MT3608构成3.7V转12V的升压电路图

    相关电子头条文章