.globl _start
_start:
/* 硬件相关的设置 */
/* Peri port setup */
ldr r0, =0x70000000
orr r0, r0, #0x13
mcr p15,0,r0,c15,c2,4 @ 256M(0x70000000-0x7fffffff)
/* 关看门狗 */
/* 往WTCON(0x7E004000)写0 */
ldr r0, =0x7E004000
mov r1, #0
str r1, [r0]
/* 设置GPMCON让GPM3作为输出引脚 */
ldr r1, =0x7F008820
mov r0, #0x1000
str r0, [r1]
/* 设置GPMDAT让GPM3输出0 */
ldr r1, =0x7F008824
mov r0, #0
str r0, [r1]
halt:
b halt
1. 把外设基地址告诉CPU.
因为CPU访问某个地址时不知道访问的是外设地址还是内存地址,需要协处理指令设置外设地址范围。
S3C6410外设地址范围256M(0x70000000-0x7fffffff) ,如代码所设置。
协处理器访问指令参见我的另一篇博文 CP15协处理器访问指令MCR/MRC解析