请教一个简单的按键程序~········

[复制链接]
2089|3
 楼主| bomclxh 发表于 2008-8-5 15:32 | 显示全部楼层 |阅读模式
试验要求说明:
P2口是输入,对应八个拨码开关
默认状态是高电平
P1口是输出,对应发光二极管
低电平点亮
按P2.0,亮P1.0
按P2.1,亮P1.0, P1.1
按P2.2,亮P1.0 P1.1 P1.2
以此类推   


ORG    0000H
    AJMP    MAIN
    ORG    0030H
MAIN:    MOV    P1,    #0FFH
    MOV    A,    #0FFH
    MOV    P2,    A
    MOV    A,    P2
    CJNE    A,    #0FFH,GO1
    AJMP    MAIN
GO1:    ACALL    DEL
    CJNE    A,    #0FFH,G02
    AJMP    MAIN
GO2:    MOV    DPTR,    #TAB
    MOV    R0,    #00H
L1:    RRC    A
    JNC    N1
    INC    R1
    SJMP    L1
N1:    MOV    A,    R0
    RLC    A
    JMP    @A+DPTR
TAB:    AJMP    PR0
    AJMP    PR1
    AJMP    PR2
    AJMP    PR3
    AJMP    PR4
    AJMP    PR5
    AJMP    PR6
    AJMP    PR7
PR0:    MOV    P1,    #0FEH
    ACALL    DEL
    AJMP    MAIN
PR1:    MOV    P1,    #0FCH
    ACALL    DEL
    AJMP    MAIN
PR2:    MOV    P1,    #0F8H
    ACALL    DEL
    AJMP    MAIN
PR3:    MOV    P1,    #0F0H
    ACALL    DEL
    AJMP    MAIN
PR4:    MOV    P1,    #0E0H
    ACALL    DEL
    AJMP    MAIN
PR5:    MOV    P1,    #0C0H
    ACALL    DEL
    AJMP    MAIN
PR6:    MOV    P1,    #80H
    ACALL    DEL
    AJMP    MAIN
PR7:    MOV    P1,    #00H
    ACALL    DEL
    AJMP    MAIN
DEL:    mov    R5,    04H
DEL1:    MOV    R6,    #0FFH
DEL2:    MOV    R7,    #0FFH
DEL3:    DJNZ    R7,    DEL3
    DJNZ    R6,    DEL2
    DJNZ    R5,    DEL1
    RET
    END  
   
 我始终找不到错误,但是看板子P1口发光二极管根本没有任何显示,P2口的发光二极管和拨码开关一一对应,我的程序错在哪里了?》先谢谢各位了!`
lyjian 发表于 2008-8-5 15:43 | 显示全部楼层

看错了

这条错了
DEL:    mov    R5,    04H
lyjian 发表于 2008-8-5 15:56 | 显示全部楼层

这里还有问题

 JNC    N1
 INC    R1

应该是INC    R0吧

 楼主| bomclxh 发表于 2008-8-5 16:35 | 显示全部楼层

谢谢 楼上

恩,JNC    N1
INC    R1

应该是INC    R0吧


这条指令我改过了,就是往上粘的时候忘记了
关键问题确实是出在DEL:    mov    R5,    04H了
真的谢谢呀
心情好多了~···
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

22

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部