【Linux】系统移植篇二--uboot烧写与使用



一、交叉环境的搭建

交叉环境搭建教程免费下载:
https://download.csdn.net/download/qq_51447215/85302721

1、tftp简介

tftp(Trivial File Transfer Protocol)即简单文件传输协议
是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件
传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69
uboot中提供tftp,因此只需要在Ubuntu中下载就行了
在这里插入图片描述


2、nfs简介

nfs(Network File System)即网络文件系统,其基于UDP/IP
使用nfs能够在不同计算机之间通过网络进行文件共享,能使使用
者访问网络上其它计算机中的文件就像在访问自己的计算机一样。
在这里插入图片描述


二、uboot

Bootloader

在操作系统运行之前运行的一小段代码,用于将软硬件环境初始化到
一个合适的状态,为操作系统的加载和运行做准备(其本身不是操作系统)

Bootloader基本功能

  • 初始化软硬件环境
  • 引导加载linux内核
  • 给linux内核传参
  • 执行用户命令

注:bootloader是启动引导程序的统称,嵌入式linux常用的bootloader是uboot


三、SD卡启动盘制作

SD卡存储结构

  SD卡的存储以扇区为单位,每个扇区的大小为512Byte, 其中零扇区存储分区表(即分区信息),后续的扇区可自行分区和格式化;
  若选择SD卡启动,处理器上电后从第一个扇区开始将其中的内容搬移到内存,所以我们把uboot放到从第一个扇区开始之后的空间, 之后的空间根据个人需求可进行分区和格式化
在这里插入图片描述

ARM开发板SD卡启动盘制作教程下载:https://download.csdn.net/download/qq_51447215/85303047


四、uboot的使用

当我们将uboot程序烧入SD卡,再将SD卡插到ARM开发板上,选择SD卡启动,开发板上电,芯片将uboot程序从SD卡外存搬移到内存执行,下面讲解uboot的使用。


1、uboot模式

  • 自启动模式
      uboot启动后若没有用户介入,倒计时结束后会自动执行自启动
    环境变量(bootcmd)中设置的命令(一般作加载和启动内核)
  • 交互模式
      倒计时结束之前按下任意按键uboot会进入交互模式,交互模式下
    用户可输入uboot命令

2、uboot帮助命令

  • help
      查看uboot支持的所有命令
  • help 命令
      查看具体命令的使用方法

3、uboot环境变量命令

  • printenv
    打印uboot中所有的环境变量
  • setenv
    设置指定的环境变量(保存在RAM内存中)
    setenv 环境变量 环境变量的值
  • saveenv
    保存所有环境变量到EMMC中

4、uboot常用环境变量

  • ipaddr
    uboot的IP地址
  • serverip
    服务器的IP地址(即ubuntu的IP)
  • bootdelay
    进入自启动模式之前倒计时的秒数
  • gatewayip
    网关IP地址
  • netmask
    掩码

5、uboot网络传输命令

  • loadb
    通过Kermit协议下载文件到指定的内存地址
    loadb 地址
  • tftp
    通过tftp协议下载文件到指定的内存地址
    tftp 地址 文件名

注:使用tftp之前要配置好网络及tftp服务器


6、uboot存储器访问命令

  • mmc read
    将EMMC中指定扇区中的内容读取到内存中指定的地址
    mmc read <addr> <blk#> <cnt>

      addr:	内存地址
      blk#:	EMMC中的扇区编号
      cnt:	读取的扇区的个数
    
  • mmc write
    将内存中指定地址中的内容写入到EMMC中指定的扇区
    mmc write <blk#>


7、uboot自启动环境变量

bootcmd

  • 自启动的环境变量
  • 该环境变量可以设置成一到多个uboot命令的集合(若有多个使用;分割)
  • 自启动模式下uboot就会按照bootcmd中命令的顺序逐条执行

例子:

setenv bootcmd tftp 40008000 interface.bin\;go 40008000
saveenv        

到这里就结束啦!
在这里插入图片描述

  • 8
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

修成真

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值