【UBOOT】1-使用与烧写

​一、uboot简介

1)uboot是一个裸机程序,比较复杂
2)最主要的作用是引导Linux内核启动;

  • 初始化DDR;
    • 因为Linux是运行在DDR里面的;
    • 而Linux镜像(zImage或uImage+dtb)一般存放在SD EMMC NADN FLASHZ外置存储区域
    • 需要将Linux镜像从外置flash拷贝到内存中
  • 引导内核启动

二、​uboot获取

  • uboot官方。缺点:支持少、某一款具体芯片驱动等不完善
  • SOC厂商,从uboot官网下载某一版本的uboot,加入相应自己的SOC以及驱动;
  • 做开发板的厂商,参考厂商的uboot

三、uboot编译

直接使用正点原子提供的uboot源码了,具体见:【链接】

  • 编译uboot的时候,需要先配置
# 先清除下工程
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
# 配置
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6ull_14x14_ddr512_emmc_defconfig
  • 编译
# v=1是显示打印信息
make V=1  ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-  
  • 产物生成:
    • u-boot.bin
    • 使用tools/mkimage软件添加头部信息,生成u-boot.imx,就能烧写进板子里了

四、烧写

使用SD卡进行烧写

​4.1 准备

1)烧写脚本:imxdownload
2)格式化工具
使用工具SDforamatter格式化SD卡
3)查看SD卡状态Linux指令:sudo fdisk -l

4.2 ​操作

1)虚拟机上操作:

chmod 777 imxdownload
./imxdownload u-boot.bin /dev/sdf
  1. 上述,就把uboot烧写到SD卡中了;
  2. 然后把SD卡拔了,插开发板上;
  3. 打开开发板,复位一下;
    【UBOOT】1-使用与烧写_第1张图片
    【UBOOT】1-使用与烧写_第2张图片

4.3 遇到问题

Q1: VMware Ubuntu认不出SD读卡器解决办法

【UBOOT】1-使用与烧写_第3张图片

你可能感兴趣的:(开发板,linux,效率工具)