当前位置:首页 > 单片机 > 单片机
[导读]1.1.8内存驱动实验设置该工程加载时运行时地址为0x30000000,如图2-55所示:图2-55设置加载时运行时地址init.s:本程序文件主要实现了,关闭看门狗,初始化内存,拷贝ROM数据到内存中,然后跳往内存中执行xmain函数,

1.1.8内存驱动实验

设置该工程加载时运行时地址为0x30000000,如图2-55所示:

图2-55设置加载时运行时地址

init.s:本程序文件主要实现了,关闭看门狗,初始化内存,拷贝ROM数据到内存中,然后跳往内存中执行xmain函数,从xmain函数返回之后,将全部led点亮,进入死循环。

;

;内存初始化实验

;

AREA Init, CODE, READONLY

ENTRY

start

; close watchdog

ldr r0, = 0x53000000;将看门狗控制寄存器地址放入r0

mov r1, #0

str r1, [r0];设置看门狗控制寄存器的值为0

bl initmem;跳转到initmem代码段,初始化内存

bl copyall;跳转到数据拷贝代码段,将ROM中数据拷贝到内存中

IMPORT xmain;引入main.c中的xmain函数

ldr sp, =0x34000000;调用C程序之前先初始化栈指针

ldr lr, =endxmain;设置xmain函数的返回地址

ldr pc, =xmain;跳转到C程序中的xmain函数的入口处执行

endxmain

ldr r0, =0x56000010; LED的GPIO接口配置寄存器

ldr r1, =0x00015400; GPIO配置数据

str r1, [r0];设置GPIO

ldr r0, =0x56000014; LED控制寄存器地址

ldr r1, =0x0;全部LED亮

str r1,[r0]

loop

b loop;死循环

copyall

IMPORT |Image

RO

Base|;引入编译器Image

RO

Base符号变量

IMPORT |Image

RW

Limit|;引入编译器Image

RW

Limit符号变量

ldr r0, = |Image$$RO$Base|;取得Image$$RO$Base域基址的值

ldr r1, = |Image

RW

Limit|;取得Image$$RW$Base域结束地址的值

ldr r2, =0x0;数据拷贝源地址

copyallloop

teq r0,r1;测试是否拷贝完成

beq quitcopyallloop;拷贝完成,跳往quitcopyallloop退出

ldr r3, [r2], #4;四字节加载

str r3, [r0], #4;四字节存储

b copyallloop;返回继续执行

quitcopyallloop

mov pc, lr;调用返回

initmem;内存初始化

ldr r0, =0x48000000;加载内存相关寄存器首地址r0

ldr r1, =0x48000034;加载内存相关寄存器尾地址到r1

adr r2, memdata;将寄存器配置数据地址段首地址加载到r2

initmemloop

ldr r3, [r2], #4;循环设置存寄存器

str r3, [r0], #4

teq r0, r1

bne initmemloop;循环到最后一个寄存器时退出函数

mov pc,lr

memdata

DCD0x22000000;BWSCON

DCD0x00000700;BANKCON0

DCD0x00000700;BANKCON1

DCD0x00000700;BANKCON2

DCD0x00000700;BANKCON3

DCD0x00000700;BANKCON4

DCD0x00000700

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

ARM系统几乎都采用Linux的操作系统,而且几乎所有的硬件系统都要单独构建自己的系统,与其他系统不能兼容,这也导致其应用软件不能方便移植,这一点一直严重制约了ARM系统的发展和应用。GOOGLE开发了开放式的Andro...

关键字: Linux x86 ARM

随着计算需求的多样化,尤其是随着移动设备、嵌入式系统和云计算的兴起,ARM 和 x86 架构之间的争论变得更加突出。ARM(高级 RISC 机器)和 x86 代表两种不同类型的处理器架构,每种架构都针对不同的工作负载和用...

关键字: Linux x86 ARM

从画质优化 (NSS) 到帧率提升 (NFRU) 和光线追踪(NSSD),Arm 计划覆盖移动端图形处理的多个维度,推动边缘 AI 图形革命。而未来通过持续的技术迭代,Arm也将保持在移动计算领域的技术领先,满足手游、A...

关键字: ARM 神经图形技术 GPU AI ML

7月31日消息,据媒体报道,芯片架构提供商Arm Holdings首席执行官Rene Haas宣布,公司正加大投入开发自有芯片产品,此举标志着其从传统IP授权模式向提供实体芯片的战略重大转变。

关键字: ARM META

7月28日消息,2025年,中国AI硬件市场规模将首次突破万亿元大关。

关键字: AI ARM

受生成式 AI 驱动, RISC-V 芯片市场快速发展。预计到2030年,RISC-V SoC出货量将达到1618.1亿颗,营收将达到927亿美元。其中,用于AI加速器的RISC-V SoC出货量将达到41亿颗,营收将达...

关键字: RISC-V CPU AI CUDA ARM 推理
关闭