u-boot命令之环境变量操作命令

@[TOC]u-boot命令之环境变量操作命令)

1. 修改环境变量

环境变量的操作涉及到两个命令: setenv 和 saveenv,命令 setenv 用于设置或者修改环境变量的值。命令 saveenv 用于保存修改后的环境变量,一般环境变量是存放在外部 flash 中的,uboot 启动的时候会将环境变量从 flash 读取到 DRAM 中。所以使用命令 setenv 修改的是 DRAM中的环境变量值,修改以后要使用 saveenv 命令将修改后的环境变量保存到 flash 中,否则的话uboot 下一次重启会继续使用以前的环境变量值。

查看环境变量的信息
在这里插入图片描述
命令 saveenv 使用起来很简单,格式为:

saveenv

比如我们要将环境变量 bootdelay 改为 3,就可以使用如下所示命令:

setenv bootdelay 3
saveenv

上述命令执行过程如图所示:
在这里插入图片描述
修改 bootdelay 以后,重启开发板, uboot 就是变为 3秒倒计时,如图 所示:
在这里插入图片描述
有时候我们修改的环境变量值可能会有空格, 比如 bootcmd、 bootargs 等, 这个时候环境变量值就得用单引号括起来,比如下面修改环境变量 bootargs 的值:

setenv bootargs 'console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw'
saveenv

上面命令设置 bootargs 的值为“console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw”,其中“console=ttymxc0,115200”、“root=/dev/mmcblk1p2”、“rootwait”和“rw”相当于四组“值”,这四组“值”之间用空格隔开,所以需要使用单引号‘’将其括起来,表示这四组“值”都属于环境变量 bootargs。

2. 新建环境变量

命令 setenv 也可以用于新建命令,用法就是修改环境变量一样,比如我们新建一个环境变量 author, author 的值为我的名字拼音:huanhuan,那么就可以使用如下命令:

setenv author huanhuan
saveenv

在这里插入图片描述

3. 删除环境变量

既然可以新建环境变量,那么就可以删除环境变量,删除环境变量也是使用命令 setenv,要删除一个环境变量只要给这个环境变量赋空值即可,比如我们删除掉上面新建的 author 这个环境变量,命令如下:

setenv author
saveenv

在这里插入图片描述
上面命令中通过 setenv 给 author 赋空值,也就是什么都不写来删除环境变量 author。重启uboot 就会发现环境变量 author 没有了。

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第1 章  BOOTLOADER 的概念与功能.................................................................................................................... 4   1.1  嵌入式LINUX软件结构与分布 ........................................................................................................................... 4   1.2  在嵌入式LINUX中B OOT LOADER 的必要性............................................................................................................. 4   1.3  BOOT LOADER的功能和选择 ............................................................................................................................... .. 5   第2 章  U‐BOOT简介............................................................................................................................................ 6   2.1  U‐BOOT的起源............................................................................................................................... .......................... 6   2.2  U‐BOOT的开发情况和资源 ............................................................................................................................... ...... 6   第3 章  开发环境搭建......................................................................................................................................... 8   3.1  交叉编译工具链的安装 ............................................................................................................................... ....8   3.2  网路服务的设置 ............................................................................................................................... ................8   3.2.1安装配置TFTP 服务............................................................................................................................... ............. 8   3.2.2安装配置NFS服务............................................................................................................................... ............... 9   3.3  串口终端程序的安装配置 ............................................................................................................................. 10  3.3.1  C‐kermit 的安装配置(推荐安装) ................................................................................................................ 10  3.3.2  minicom的安装配置 ............................................................................................................................... ....11  第4 章  熟悉U‐BOOT的使用与烧写.................................................................................................................... 13  4.1  烧写U‐BOOT到MINI2440开发板 ....................................................................................................................... 13  4.2  常用U‐BOOT命令详解............................................................................................................................... ....... 13  4.2.1获取帮助 ............................................................................................................................... ........................... 13  4.2.2环境变量与相关指令 ............................................................................................................................... ....... 15  4.2.3串口传输命令 ............................................................................................................................... ................... 17  4.2.4网络命令 ............................................................................................................................... ........................... 19  4.2.5  Nand  Flash操作指令 ............................................................................................................................... ... 21  4.2.6  内存/ 寄存器操作指令 ............................................................................................................................... 24  4.2.7  Nor Flash指令............................................................................................................................... .............. 26  4.2.8  USB 操作指令 ............................................................................................................................... .............. 29  4.2.9  SD卡(MMC) 指令 ............................................................................................................................... .......... 32  4.2.10   FAT文件系统指令 ............................................................................................................................... ........33  4.2.11 系统引导指令 ............................................................................................................................... ................. 34  4.2.13   其他指令............................................................................................................................... ................. 36  4.3  下载与烧写 ............................................................................................................................... ...................... 37   4.3.1  通过SD卡烧入Nand Flash:..................................................................................................................... 37   4.3.2  通过U盘烧入N or Flash:......................................................................................................................... 37   4.3.3  通过TFTP 服务烧入Nand  Flash:............................................................................................................... 38  4.3.4  通过NFS  服务烧入Nand  Flash:................................................................................................................ 38  4.4  内核引导............................................................................................................................... .......................... 39  4.4.1  通过SD卡引导内核: ............................................................................................................................... . 40  4.4.2  通过TFTP 服务引导内核 ............................................................................................................................. 41  4.4.3  通过NFS服务引导内核: .......................................................................................................................... 41  4.4.4  通过Nand  Flash引导内核:....................................................................................................................... 42  第5 章  U‐BOOT源码简要分析........................................................................................................................... 44  5.1  U-BOOT 源码整体框架............................................................................................................................... ..... 44  5.2  U‐BOOT代码的大致执行流程(以S3C24 X0 为例)............................................................................................. 45  第6 章  U‐BOOT在MINI2440上的移植............................................................................................................... 53  6.1  建立开发板文件,测试编译环境 ................................................................................................................. 53  6.1.1  修改顶层Makefile ...................................................................................................................................... 53  6.1.2  在/board 中建立mini2440 目录和文件 ..................................................................................................... 54  6.1.3  在include/configs/ 中建立开发板配置文件 ............................................................................................... 54  6.1.4  测试编译环境 ............................................................................................................................... ............. 55  .2  第一阶段: 探索启动代码 ............................................................................................................................... . 55  6.2.1  关闭为AT9200 写的LED 跳转 ...................................................................................................................... 56  6.2.2  修改CPU 频率初始化设置 .......................................................................................................................... 56  6.2.3  修改lowlevel_init.S 文件............................................................................................................................. 57   6.2.4  修改代码重定向部分............................................................................................................................... .. 58  6.2.5  增加LED 的点亮操作 ............................................................................................................................... ... 66  .3  第二阶段: 修改初始化代码 ............................................................................................................................ 67  6.3.1  修改lib_arm/board.c 文件.......................................................................................................................... 68  6.3.2  修改board/tekkamanninja/mini2440/mini2440.c 文件。 .......................................................................... 69  .4  第三阶段:完善目标板外设驱动 ................................................................................................................. 73  6.4.1  Nand  Flash相关代码的修改....................................................................................................................... 73  6.4.2  添加Yaffs(2)镜像烧写功能 ........................................................................................................................ 75  6.4.3  修改Nor  Flash写入功能的代码 ................................................................................................................. 79  6.4.4  修改网络相关代码............................................................................................................................... ...... 84  6.4.5  添加串口Xmodem 传输协议(可不修改) .............................................................................................. 85  6.4.6  添加LCD 显示功能 ............................................................................................................................... ....... 87   6.4.7  添加SD卡(MMC)读取功能 ................................................................................................................... 92  .5  第四阶段:修正配置文件 ........................................................................................................................... 108   6.5.1  添加CONFIG_S3C2440条件定义 ............................................................................................................. 108   6.5.2  修改配置文件include/configs/mini2440.h .............................................................................................. 116   .6  重新编译并测试 ............................................................................................................................... ............121   章  下载最新的源代码.............................................................................................................................. 121  

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值