注册 登录
编程论坛 嵌入式开发

请帮忙看一下这个程序,为什么LED常亮不闪呢

jianghong_02 发布于 2014-03-18 10:45, 4580 次点击
.text
.global _start
_start:
        ldr r0,=0x56000050

        mov r1,#0x00000015

        str r1,[r0]

        ldr r0,=0x56000054

        mov r1,#0x00000000
 16
 17         str r1,[r0]
 18
 19         mov r4,#134217728
 20
 21 @set cricle program
 22
 23                                 @close led
 24 loop:
 25         bl dely
 26
 27         ldr r0,=0x56000054
 28
 29         mov r1,#0x000000ff
 30
 31         str r1,[r0]
 32
 33                                 @open led
 34         bl dely
 35
 36         ldr r0,=0x56000054
 37
 38         mov r1,#0x00000000
 39
 40         bl dely
 41
 42         b loop
 43
 44
 45 dely:
 46
 47         sub r2,r2,#1
 48
 49         cmp r2,#0
 50
 51         bne dely
2 回复
#2
jianghong_022014-03-18 10:48
.text
.global _start
_start:
        ldr r0,=0x56000050

        mov r1,#0x00000015

        str r1,[r0]

        ldr r0,=0x56000054

        mov r1,#0x00000000
 16
 17         str r1,[r0]
 18
 19         mov r4,#134217728
 20
 21 @set cricle program
 22
 23                                 @close led
 24 loop:
 25         bl dely
 26
 27         ldr r0,=0x56000054
 28
 29         mov r1,#0x000000ff
 30
 31         str r1,[r0]
 32
 33                                 @open led
 34         bl dely
 35
 36         ldr r0,=0x56000054
 37
 38         mov r1,#0x00000000
 39
 40         bl dely
 41
 42         b loop
 43
 44
 45 dely:
 46
 47         sub r4,r4,#1
 48
 49         cmp r4,#0
 50
 51         bne dely
#3
jianghong_022014-03-19 14:57
没有人顶还是我自己顶吧,终于改过来了
以下是引用jianghong_02在2014-3-18 10:48:09的发言:

.text
.global _start
_start:
        ldr r0,=0x56000050

        mov r1,#0x00000015

        str r1,[r0]

        ldr r0,=0x56000054

        mov r1,#0x00000000
 16
 17         str r1,[r0]
 18
 19         mov r4,#134217728
 20
 21 @set cricle program
 22
 23                                 @close led
 24 loop:
 25         bl dely
 26
 27         ldr r0,=0x56000054
 28
 29         mov r1,#0x000000ff
 30
 31         str r1,[r0]
 32
 33                                 @open led
 34         bl dely
 35
 36         ldr r0,=0x56000054
 37
 38         mov r1,#0x00000000
 39
 40         bl dely
 41
 42         b loop
 43
 44
 45 dely:
 46
 47         sub r4,r4,#1
 48
 49         cmp r4,#0
 50
 51         bne dely




这是修改后能正常运行的程序
.text
.global _start
_start:

        ldr r0,=0x56000050

        mov r1,#0x00000001

        str r1,[r0]

        ldr r0,=0x56000054

        mov r1,#0x00000000

        str r1,[r0]

@set cricle program

                                @close led
loop:
        mov r4,#134217728

        bl dely
         
        ldr r0,=0x56000054

        mov r1,#0x000000ff

        str r1,[r0]

                                @open led
        mov r4,#134217728

        bl dely

        ldr r0,=0x56000054

        mov r1,#0x00000000

        str r1,[r0]

        b loop

dely:
        sub r4,r4,#1

        cmp r4,#0

        bne dely

        mov pc,lr
1