赞助论坛
  • 2387阅读
  • 0回复

51单片机10路花样灯不成功 [复制链接]

楼层直达
发帖
372
精华
0
金币
1233
威望
1
贡献
9
好评
9
注册
2010-03-08
楼主    场效应 发表于: 2015-04-01 15:39:38 
这程序8路p0输出是正常的,改为p0和p2的10路输出,P2就不正常了,而且也不能循环了,各位高手看看什么原因。
START:MOV DPTR, #TABLE
LOOP: CLR A
    MOVC A,   @A+DPTR
   MOV P0, A
   INC DPTR
    MOVC A,   @A+DPTR
   MOV P2, A
   INC DPTR
   CJNE A,#01H,LOOP1 ;取到01就返回重新循环
    JMP START
LOOP1:
    ACALL DELAY
       JMP LOOP
;--------------------------
;0.5s延时程序
;--------------------------
DELAY:MOV R5, #25
DLY1: MOV R6, #100
DLY2: MOV R7, #100
    DJNZ R7, $
    DJNZ R6, DLY2
    DJNZ R5, DLY1
    RET
TABLE:
      DB 0FEH,0FFH,0FDH,0FFH,0FBH,0FFH,0F7H
   DB 0FFH,0EFH,0FFH,0DFH,0FFH,0BFH,0FFH
   DB 07FH,0FFH,0FFH,0FDH,0FFH,07FH                ;10灯右移表
    DB 01H,01H               ;结束标志
  END