嵌入式Linux三剑客(Uboot、内核、文件系统)——Uboot

207 阅读2分钟

嵌入式Linux三剑客(Uboot、内核、文件系统)——Uboot

Uboot

  • Uboot是一个主要用于嵌入式系统的引导加载程序,可支持多种不同的计算机系统结构。
  • 功能: 可灵活设置、传递多个关键参数给操作系统;支持目标板环境参数多种存储方式,如FLASH、NVRAM、EEPROM;设备驱动串口、SDRAM、FLASH、以太网、LCD、NVRAM、EEPROM、键盘、USB、PCMCIA、PCI、RTC等驱动支持;上电自检功能 SDRAM、FLASH 大小自动检测
  • 工作模式
  1. 启动加载模式是 Bootloader 的正常工作模式,嵌入式产品发布时,Bootloader 必须工作在这种模式下,Bootloader 将嵌入式操作系统从 FLASH 中加载到 SDRAM 中运行,整个过程是自动的。

  2. 下载模式就是 Bootloader 通过某些通信手段将内核映像或根文件系统映像等从PC机中下载到目标板的 FLASH 中。

  • Uboot编译过程
  1. 解压缩Uboot源码到目录下
  2. 根据开发板进行配置
  3. 编译Uboot
  4. 烧写uboot.bin到开发板
  5. 启动开发板,uboot就运行起来
  • 典型Uboot命令
  1. nand分区命令:nand
  2. 参数命令:printenv打印环境变量/setenv设置环境变量/saveenv保存环境变量
  3. 传输文件命令:load/tftp
  4. 启动命令:bootm启动内核命令
NandFlash 操作命令:nand 命令码 参数

功能:

根据命令码对 nandflash 设备进行相关操作,命令码有以下几种

erase

语法形式:nand erase EraseAddr EraseSize

功能:擦除 nand 设备从 EraseAddr 地址处 EraseSize 块大小内容

write

语法形式:nand write FromMemAddr ToNandAddr size

功能:将内存地址为 FromMemAddr 处 size 字节数据写到 nand 设备 ToNandAddr 地址处。

Info

语法形式:nand info

功能:打印 nand 设备信息

read

语法形式:nand read ToMemAddr FromNandAddr size

功能:从 Nand 设备地址为 FromNandAddr 处读取 size 字节数据到内存 ToMemAddr 处。

参考文章:blog.csdn.net/m0_50662680…