bootloader = boot + loader
boot的目的:跳到C语言中(bl main)
跳之前:
0、关闭看门狗、中断、MMU、CACHE
1、配置系统时钟
2、配置DRAM的控制器(行地址数、列地址数、多少块、周期性的充电)
3、让sp指向可读可写的设备区间中,满足递减栈的规则 SDRAM --用哪些模式就要初始化哪些模式下的SP、每个模式值不能覆盖其他的模式
4、代码搬移
–执行速度问题,把程序从存储器norflash搬移到快速的内存、只把存储器的一部分代码执行出来,把储存在其他位置上的代码,搬移到内存
loader的目的:执行应用逻辑、点灯、串口、加载Linux内核等
bootloader的作用以及步骤
最新推荐文章于 2024-02-27 11:25:05 发布