三九宝宝网宝宝教育学龄段教育

结合Bootloader的相关知识并参考ARM的汇编指令分析下面的

01月06日 编辑 39baobao.com

[安全生产管理制度汇编]安全生产管理制度:安全生产管理制度是一系列为了保障安全生产而制定的条文。它建立的目的主要是为了控制风险,将危害降到最小,安全生产管理制度也可以依据风险制定。安全生产...+阅读

我的水平也一般,注释仅供参考

.globl _start

_start: b reset

reset: //复位起始

ldr r0, IC_BASE //将芯片基址载入R0寄存器中

mov r1, #0x00

str r1, [r0, #ICMR] //初始化ICMR寄存器为0

ldr r0, PWR_BASE //将电源管理基址载入R0寄存器中

ldr r1, cpuspeed //设定CPU时钟

str r1, [r0, #PPCR] //将设定的时钟载入PPCR寄存器中(我猜测是使能该时钟)

bl ledinit //初始化LED

bl memsetup //初始化外部Memory设置

//该段应该是完成复位控制器的配置,由于没有具体的CPU手册,因此无法知道是完成了什么配置,建议你对照CPU手册查看一下,下面几段相同

ldr r0, RST_BASE //载入复位控制器基址

ldr r1, [r0, #RCSR] //读取RCSR寄存器的值到R1中

and r1, r1, #0x0f //保留R1的低四位

teq r1, #0x08 //若R1的第3位不为0,则跳转至normal_boot,否则继续执行

bne normal_boot /* no, continue booting */

mov r1, #0x08

str r1, [r0, #RCSR] ; //将RCSR寄存器设置为0x08

/* handle Power Manager Sleep Status Register (PSSR), see 9.5.7.5 from [1]*/

ldr r1, [r0, #PSSR] //载入PSSR寄存器的值到R1中

orr r1, r1, #0x08

orr r1, r1, #0x10 //将R1寄存器的值的第3、4位置1

str r1, [r0, #PSSR] //将该值写回PSSR寄存器

/* get the value from the PSPR and jump to it */

ldr r0, PWR_BASE //读取电源管理基址到R0中

ldr r1, [r0, #PSPR] //读取PSPR内的值(我估计是一个地址)

mov pc, r1 //跳转至读取的地址

normal_boot:

mov r7, #0x1000

mov r6, r7, lsl #8 /* 4k << 2^8 = 1MB */ //将0x1000左移8位放入R6中

ldr r5, BLOB_START //载入BLOB_START的内容到R5中

relocate: //重定位,为代码复制做准备

adr r0, _start //获取_start的地址

add r2, r0, #(64 * 1024) /* blob maximum size is 64kB */ //取R0地址后64KB的代码

add r0, r0, #0x400 /* skip first 1024 bytes */ //跳过起始的1K代码不复制

ldr r1, BLOB_START //设定目标地址到R1中

/* r0 = source address

* r1 = target address

* r2 = source end address

*/

copy_loop: //复制代码。每次复制8Byte

ldmia r0!, {r3-r10}

stmia r1!, {r3-r10}

cmp r0, r2

ble copy_loop

bl led_off //复制完成关闭LED指示

ldr r0, BLOB_START //获取程序入口

mov pc, r0 //跳转至程序入口,第一阶段初始化完成

以下为关联文档:

家长怎样锻炼自闭症孩子听指令的能力自闭症孩子听指令的能力需要训练吗?家长怎样锻炼自闭症孩子听指令的能力?接受训练的时候,孩子总是不听指令,这让自闭症孩子家长们头疼不已。孩子到底为什么不听指令?怎么才能让孩...

雅思口语真题汇编与精讲Weather and ClimateWhat type of weather do you like?I love sunny days with azure skies. So I can do a lot of outdoor activities.I love cold weather and parti...

GMAT作文考试试题汇编1.AA:公司如果要找寻新的商业机会或选新址的话,应该考虑Helios这个城市,因为失业率更低,又比所在州其他城市贡献更多的 manufacturing jobs.现在Helios is attempting to attra...

SSE指令集发展历程回顾所谓SSE指令集也叫单指令多数据流扩展,最早是由英特尔提出,是为了加强浮点运算、图像处理等多媒体应用的能力,能更好的对整个系统进行控制,提高处理性能的指令的集合.而指令...

最新雅思考试图表作文常用的词汇编为帮助大家准备雅思作文,现在为你们提供“最新雅思考试图表作文常用的词汇编”,希望你们在考试的时候可以用得上! 1.有用的词 上升:increase, rise ,ascend ,core, surge,go up,...

汇编实现备份硬盘引导区记录为防止病毒对硬盘的侵袭或其它误操作,备份硬盘引导记录是一有效方法。若手头没有现成的工具软件(如SRCTools,一个很好用的工具,可在本站的“磁盘工具”中下载,其具体使用方法请见...

幼师教育随笔一次不按指令的活动教育随笔:一次不按指令的活动 一天,我带孩子去户外做体育游戏“找家”。这个游戏要求幼儿在听到老师的指令后,按照自己胸前挂着的“猩机”的颜色找到并跑向与之颜色相同的“家...

模拟夜间考试语言指令夜间通过直行路口用什么灯光1、路口的话,要交替闪烁一下远近光,目的是让路口方向的来车知道你的存在以及你即将通过路口。 2 、夜间在没有路灯,照明不良条件下行驶时,灯光使用:远光灯 。 3、夜间或者低能见...

教育科学出版社三年级下册概念汇编按单元三年级下册科学概念汇编(按单元) 小学科学 2009-03-18 15:17:25 阅读54 评论0 字号:大中小 三年级下册科学概念汇编(按单元)第一单元 植物的生长变化1 绿色开花植物(生长)一般都要...

推荐阅读
图文推荐