导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→我确实没招了,我现在将我的程序附上,万望各位指点以下,我的硬

* 62135: 键盘设计编程

   xsz8866 
xsz8866发表的帖子 

 
我确实没招了,我现在将我的程序附上,万望各位指点以下,我的硬件设计如上帖所述,74LS244由P27控制,低电位有效,LS373由P26控制,高电位有效,别忘了单步运行通过了,另外各个键盘的执行程序大家先不要理会,是我检测程序是否运行的,谢谢!
MAIN:ORG 0
     LCDD EQU P2.4
     LCDM EQU P2.5
     KEYC EQU P2.6
     KEYR EQU P2.7
     AJMP KEY
     ORG 30H

KEY:ACALL INT
    ACALL KSI
    JNZ LK1
    ACALL DIR
    AJMP KEY
INT:CLR LCDD
    CLR LCDM
    CLR KEYC
    SETB KEYR
    RET
KSI:clr p0.0
clr p0.1
clr p0.2
clr p0.3
    SETB KEYC
    NOP
    CLR KEYC
    MOV P0,#0FFH
    CLR KEYR
    NOP
    NOP
    MOV A,P0
    SETB KEYR
    CPL A
    ANL A,#0FH
    RET
LK1:ACALL DIR
    ACALL INT
    ACALL KSI
    JNZ LK2
    ACALL DIR
    AJMP KEY
LK2:MOV R2,#0FEH
    MOV R4,#00H
LK4:ACALL INT
    MOV P0,R2
    SETB KEYC
    nop
    CLR KEYC
    MOV P0,#0FFH
    NOP
    CLR KEYR
    NOP
    NOP
    MOV A,P0
    NOP
    NOP
    SETB KEYR
    JB ACC.0,LONG
    MOV A,#00H
    AJMP LKP
LONG:JB ACC.1,LTWO
     MOV A,#4H
     AJMP LKP
LTWO:JB ACC.2,LTHR
     MOV A,#8H
     AJMP LKP
LTHR:JB ACC.3,NEXT
     MOV A,#0CH
     AJMP LKP
LKP:ADD A,R4
    PUSH ACC
LK3:ACALL DIR
    ACALL KSI
    JNZ LK3
    POP ACC
    MOV R5,A
    RL A
    ADD A,R5
    MOV DPTR,#TABLE
    JMP @A+DPTR
NEXT:INC R4
     MOV A,R2
     JNB ACC.3,KND
     RL A
     MOV R2,A
     AJMP LK4
KND:AJMP KEY
TABLE:LJMP PRG0
      LJMP PRG1
      LJMP PRG2
      LJMP PRG3
      LJMP PRG4
      LJMP PRG5
      LJMP PRG6
      LJMP PRG7
      LJMP PRG8
      LJMP PRG9
      LJMP PRG10
      LJMP PRG11
      LJMP PRG12
      LJMP PRG13
      LJMP PRG14
      LJMP PRG15
DIR:MOV R6,25
DIR1:MOV R7,200
     DJNZ R7,$
     DJNZ R6,DIR1
     RET

PRG0:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG1:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG2:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG3:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG4:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG5:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG6:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG7:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG8:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG9:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG10:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG11:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG12:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG13:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG14:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY
PRG15:CLR P2.0
     SETB P2.0
     LCALL DIR
     CLR P2.1
     SETB P2.1
     LCALL DIR
     CLR P2.2
     SETB P2.2
     AJMP KEY


发表时间:2004年9月10日9:36:16

  
回复该帖

本主题共有 5 帖,分页:>>>>>该主题的所有内容[5]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

  62305.[详细]用C写好了,不要搞得这么复杂!
摘要:用C写好了,不要搞得这么复杂!......(29字)
- [hualch][928次] 2004年9月13日

  101296.[详细]怎么看啊
摘要:好好啊......(6字)
- [zse0019819][848次] 2007年1月2日

[上一篇帖子]:关于AD574我读出来得转换结果总不对,究竟适合原因?请各位大虾指教,先谢谢了! AD574
[下一篇帖子]:求教keil c51在keil中编译c文件时,出现error C272:&nbs