首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 电子制作
利用8279实现显示扫描自动化
来源:本站整理  作者:佚名  2011-04-14 09:07:34



    1、实验内容

  在外接的键盘功能板上,按数字键, 数码管 上应相应能显示按下的数字,按下功能键,能相应执行其它功能程序。

  2、实验原理图


  3、实验说明

  利用 8279 可以实现对键盘/ 显示器 的自动扫描,以减轻 CPU 负担,具有显示稳定,程序简单,不会出现误动作等特点。本实验利用8279实现显示扫描自动化。

  4、实验步骤

  ①将DVCC实验系统上J8 插座 与键盘显示板用扁平 电缆 相连。

  ②将KEY区D0-D7用8芯 排线 连到BUS2区XD0-XD7上。

  ③将KEY区WR、RD、ALE分别连到BUS3区XWR、XRD、ALE上。

  ④KEY区A0连到BUS1区XA0上。

  ⑤KEY区R ST 连到MP区SP上。

  ⑥KEY区KCS连到SELET区的Y3上。

  ⑦在DVCC实验系统上按F2键进入仿真1态,即显示“P.....”,从起始地址08F0H开始连续执行程序。

  ⑧功能板上数码管显示P,按下功能板上的数字键,数码管上显示相应的数字,按下功能键,数码管上显示相应的0字循环(LAST键)、1字循环(NEXT键)、2字循环(EXEC键)。

  5、程序

  程序清单:

  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,#KJPA DDR

  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

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:31,148.44000 毫秒