现在写流水灯程序,遇到的问题

[复制链接]
2162|3
 楼主| zhouwupingboy 发表于 2009-12-27 12:44 | 显示全部楼层 |阅读模式
     
   ORG 0000H
   SJMP MAIN
   ORG 0030H
         
   
MAIN:  MOV P0,#078H
       MOV R5,#05H
        
   LP4: MOV A,P0      
        RL A
        MOV P0,A
        LCALL DELY
       DJNZ R5,LP4
        SJMP MAIN
              
        
DELY: MOV      R5,#5H
DELY0:MOV      R6,#0C8H
DELY1:MOV      R7,#0F8H
      NOP
DELY2: DJNZ     R7,DELY2
       DJNZ     R6,DELY1                           
       DJNZ     R5,DELY0
       RET
      
       END

帮一下忙,看一下这个程序。


这是一个流水灯的程序。
  

00011111

10001111
11000111
11100011
11110001
11111000
灯这样亮
0亮

到了。
11111000应该是亮
11111000
可是它亮了。
01111000

我不知道这是为什么。
有高手,看一下。

可我用R5时,就可以实现/。
我不知道这是什么原因















 楼主| zhouwupingboy 发表于 2009-12-27 12:55 | 显示全部楼层
打错了。是用寄存器R1时就可以。R5不可以
 楼主| zhouwupingboy 发表于 2009-12-27 12:59 | 显示全部楼层
MAIN:  MOV P0,#078H
       MOV R1,#05H
        
   LP4: MOV A,P0      
        RL A
        MOV P0,A
        LCALL DELY
       DJNZ R1,LP4
        SJMP MAIN


这样就可以实现
NE5532 发表于 2009-12-27 13:03 | 显示全部楼层
自己拿keil仿真看下程序运行情况。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

39

主题

160

帖子

0

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