GPIO模块:点亮led灯

 

@;将引脚都设置为输出模式
ldr r1,=0x11000c40
ldr r2,[r1]
bic r2,#0xf0000000
orr r2,#0x10000000
str r2,[r1]

ldr r1,=0x11000c20
ldr r2,[r1]
bic r2,#0x0000000f
orr r2,#0x00000001
str r2,[r1]

ldr r1,=0x114001E0
ldr r2,[r1]
bic r2,#0x000f0000
orr r2,#0x00010000
str r2,[r1]

ldr r1,=0x114001E0
ldr r2,[r1]
bic r2,#0x00f00000
orr r2,#0x00100000
str r2,[r1]

@;将引脚设置为一个高电平或低电平

j1:
@;LED2
ldr r1,=0x11000c44@;取出寄存器地址
ldr r2,[r1]@;读出寄存器中的值
orr r2,#0x80
str r2,[r1]@;将寄存器中的第7位置为1
bl delay_ms
bic r2,#0x80
str r2,[r1]@;将寄存器中的第7位置为0

@;LED3
ldr r1,=0x11000c24
ldr r2,[r1]
orr r2,#0x01
str r2,[r1]
bl delay_ms
bic r2,#0x01
str r2,[r1]

@;LED4
ldr r1,=0x114001E4
ldr r2,[r1]
orr r2,#0x10
str r2,[r1]
bl delay_ms
bic r2,#0x10
str r2,[r1]

@;LED5
ldr r1,=0x114001E4
ldr r2,[r1]
orr r2,#0x20
str r2,[r1]
bl delay_ms
bic r2,#0x20
str r2,[r1]

@;LED4
ldr r1,=0x114001E4
ldr r2,[r1]
orr r2,#0x10
str r2,[r1]
bl delay_ms
bic r2,#0x10
str r2,[r1]

@;LED3
ldr r1,=0x11000c24
ldr r2,[r1]
orr r2,#0x01
str r2,[r1]
bl delay_ms
bic r2,#0x01
str r2,[r1]

b j1

@;延时函数
delay_ms:
ldr r4,=0x5ffffff
j2:
sub r4,#1
cmp r4,#0
bne j2
mov pc,lr

posted @ 2022-03-13 22:36  major825  阅读(124)  评论(0)    收藏  举报