用CH452做16X16点阵

我用两片CH452串联做16X16点阵 写的程序如下 DCLK BIT P2.3 DIN BIT P2.2 LOAD BIT P2.1 ORG 0000H AJMP START ORG 0030H START: MOV R1,#02H MOV 60H,#03H ;设置系统 MOV 61H,#04H MOV 62H,#03H MOV 63H,#04H ACALL WRITE MOV 60H,#80H ;亮两颗灯 MOV 61H,#0AH MOV 62H,#80H MOV 63H,#08H ACALL WRITE WRITE: CLR LOAD ;写入数据 MOV R7,#08H MOV R0,#60H MOV A,@R0 WRITE8: RRC A CLR DCLK MOV DIN,C SETB DCLK DJNZ R7,WRITE8 MOV R7,#04H INC R0 MOV A,@R0 WRITE4: RRC A CLR DCLK MOV DIN,C SETB DCLK DJNZ R7,WRITE4 INC R0 MOV A,@R0 MOV R7,#08H DJNZ R1,WRITE8 MOV R1,#02H SETB LOAD RET END 为什么只会亮一颗灯呢 那个大哥可否帮我解决下

你好!;亮一个灯是对的啊!因为你程序就是亮一个灯,只不多你的程序有点问题.我简单的修改了一下,仅供参考! DCLK BIT P2.3 DIN BIT P2.2 LOAD BIT P2.1 ORG 0000H AJMP START ORG 0030H START: MOV 60H,#03H ;设置系统参数 MOV 61H,#04H ACALL WRITE MOV 60H,#80H ;亮1颗灯 MOV 61H,#0AH ACALL WRITE AJMP $ WRITE: CLR LOAD ;写入数据 MOV R7,#08H MOV R0,#60H MOV A,@R0 WRITE8: RRC A ;写入低8位数据 CLR DCLK MOV DIN,C SETB DCLK DJNZ R7,WRITE8 MOV R7,#04H INC R0 MOV A,@R0 WRITE4: RRC A ;写入高4位数 CLR DCLK MOV DIN,C SETB DCLK DJNZ R7,WRITE4 SETB LOAD RET END


只有登录才能回复,可以选择微信账号登录