bootloader编程学习笔记
#韦东山视频教学bootloader学习笔记
最简单的bootloader的编写步骤:
1、初始化硬件:关看门狗、设置时钟、设置SDRAM、初始化NAND flash
2、如果bootloader比较大,要把它重定位到SDRAM
3、把内核从NAND FLASH 读到SDRAM
4、设置要传给内核的参数
5、跳转执行内核
第一阶段:
(1)、关看门狗
(2)、设置时钟
(3)、初始化SDRAM
(4)、重定位:把bootloader本身的代码从flash复制到他的链接地址去
nand初始化
判断nor启动还是nand启动
复制代码
nor:直接复制
nand:1. 选中
2. 发出读命令00h
3. 发出地址(分5步发出)
4. 发出读命令30h
5. 判断状态
6. 读数据
7. 取消选中
(5)、执行c程序main
第二阶段:
1、帮内核设置串口: 内核启动的开始部分会从串口打印一些信息,但是内核一开始没有初始化串口
2、从NAND FLASH里把内核读入内存
3、设置启动参数
4、跳转执行