ADS想自己弄一个简单bootloader,主要想练练手,对bootloader以及s3c2410有更深入的了解而目的。
我现在有个地方想不明白:
RO BASE=0x00000000
程序烧写到了Nand Flash 了,
阶段1把所有的Bootloader程序从Nand Flash拷贝到SDRAM里头了。SDRAM的物理地址是0x30000000,然后跳转阶段2(ldr pc, GotoMain)。
RO BASE设置成了0x00000000那么程序转移到SDRAM后物理地址是0x30000000,能保证程序正常运行吗?万一代码是位置有关的怎么办?会不会出现问题。
这个问题一般用什么办法解决?
我看了板子自带bootlaoder的代码,但是没有发现怎么弄得?反正运行正常。ro base 也是0x00000000,不是SDRAM的起始地址 0x30000000。这个问题郁闷了好长时间了,看了很多帖子,没有召见涉及这个问题。
我要赚赏金打赏帖 |
|
|---|---|
| 基于MCP23S17的输入输出功能模块控制被打赏¥20元 | |
| 【S32K3XX】SPD 软件包使用Link文件修改被打赏¥22元 | |
| Switch-Case局部变量定义问题被打赏¥23元 | |
| 基于米尔TIAM62L开发板的串口通信及应用被打赏¥20元 | |
| PCF8574功能模块及其使用被打赏¥20元 | |
| 传感器LSM6DSO及LIS3MDL的功能检测被打赏¥18元 | |
| LPS25HB气压传感器及其检测被打赏¥18元 | |
| HTS221温湿度传感器及其检测被打赏¥18元 | |
| 【S32K3XX】HSE FW 版本更新被打赏¥21元 | |
| 基于ArduinoUNO开发板的AT24C02读写测试被打赏¥16元 | |

我要赚赏金
