主题 : start.s中不懂的地方,请求帮助. 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 123926
精华: 0
发帖: 2
金钱: 10 两
威望: 2 点
贡献值: 0 点
综合积分: 4 分
注册时间: 2016-03-30
最后登录: 2018-02-05
楼主  发表于: 2016-03-31 09:10

 start.s中不懂的地方,请求帮助.

.globl _start

_start:
    // 设置GPJ2CON的bit[0:15],配置GPJ2_0/1/2/3引脚为输出功能
    ldr r1, =0xE0200280                    
    ldr r0, =0x00001111
    str r0, [r1]

    mov r2, #0x1000



请问下这边的地址“0xE0200280 ”   有什么用?  为什初始的时候要设置ldr r1, =0xE0200280 ?
级别: 新手上路
UID: 124409
精华: 0
发帖: 2
金钱: 10 两
威望: 2 点
贡献值: 0 点
综合积分: 4 分
注册时间: 2016-04-14
最后登录: 2016-04-14
1楼  发表于: 2016-04-14 11:57
不知道你是用的哪个芯片
第一行是加载GPJ2CON寄存器地址到r1
第二行是要设置的寄存器值加载到r0
第三行是将r0的内容写入r1指向的寄存器(GPJ2CON)
这种写法是uboot中常用的方式