【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的时候,需要先配置
bash 复制代码
# 先清除下工程
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- distclean
# 配置
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- mx6ull_14x14_ddr512_emmc_defconfig
  • 编译
bash 复制代码
# 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)虚拟机上操作:

bash 复制代码
chmod 777 imxdownload
./imxdownload u-boot.bin /dev/sdf
  1. 上述,就把uboot烧写到SD卡中了;
  2. 然后把SD卡拔了,插开发板上;
  3. 打开开发板,复位一下;

4.3 遇到问题

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

相关推荐
爱吃番茄鼠骗2 分钟前
Linux操作系统———信号量
linux
灰勒塔德10 分钟前
jetson orin nano super开发指南
linux·服务器·python
---学无止境---15 分钟前
TSS(Task-State Segment)任务状态段详解
linux
木里先森41 分钟前
解决报错:/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32‘ not found
linux·python
shizhan_cloud1 小时前
IF 条件语句的知识与实践
linux·运维
郝学胜-神的一滴1 小时前
Linux信号四要素详解:从理论到实践
linux·服务器·开发语言·网络·c++·程序人生
赖small强1 小时前
【Linux驱动开发】DDR 内存架构与 Linux 平台工作机制深度解析
linux·驱动开发·ddr·sdram·ddr controller
阿干tkl1 小时前
CentOS Stream 8 网络绑定(Bonding)配置方案
linux·网络·centos
Leon-Ning Liu1 小时前
【系列实验二】RAC 19C集群:CentOS 7.9 原地升级至 Oracle Linux 8.10 实战笔记
linux·数据库·oracle·centos
大聪明-PLUS1 小时前
C++编程中存在的问题
linux·嵌入式·arm·smarc