uboot环境变量

1.uboot环境变量

在linux和windows操作系统中都有相应的环境变量,在操作系统中一般被指定为操作系统运行环境的一些参数。操作系统的环境变量主要作用可以用于指明重要目录在哪里。在uboot中的环境变量可以理解为一堆变量,然后每次开机从EMMC,SPI flash 等固态存储介质中进行读取到内存DRAM中进行使用,uboot环境变量可以使用uboot命令进行相应的修改,

2. uboot环境变量的作用

uboot环境变量可以当成由一组无大小限定和无类型的变量组成,如果没有配置相应的uboot环境变量,就会去执行代码中设定的相应变量,如果相应的uboot环境变量不为空就是优先去执行uboot环境变量对应的值(命令,指定的一些参数) , uboot环境变量提供了开发性,比如uboot代码规定了启动内核的方式是从spi flash进行启动,如果要修改成从emmc启动就得对uboot代码进行修改然后重新编译烧录。有了uboot环境变量就只需要配置相应的环境变量就可以对启动内核的方式进行修改,因为系统会优先使用环境变量。

3.uboot环境变量的配置

(1)打印环境变量命令

printenv命令可以打印出uboot中所有的环境变量

 printenv

uboot环境变量

(2) 保存环境变量命令

setenv 设置指定的环境变量,保存在内存中(掉电即丢失)。

setenv

如下图所示将环境配置一个test的新环境变量

uboot环境变量
修改已经存在的环境变量也跟设置新的环境变量一样,比如我想吧上面test的环境变量从100修改成10
uboot环境变量
环境变量删除的方法是将该环境变量配置为空
setenv test

如下图所示将test环境变量进行删除

uboot环境变量

(3)保存环境变量

在上面配置完环境变量后,这时环境变量只是放置在内存中会在掉电后丢失,这是使用saveenv命令就可以将环境变量进行保存在固态存储介质中,下次开机时环境变量也可以存在。

saveenv

如下图所示,上面配置的test环境变量使用saveenv命令后,进行掉电启动,打印出环境变量,test环境变量还是在哪里。

uboot环境变量

4.uboot 环境变量的使用

下面是我当前开发板的环境变量
mtdpart :boot使用环境mtdparts 来指定mtd分区
bootdelay:uboot启动后进入linux的自动倒数秒数,
baudrate:串口波特率
ethaddr:网口MAC地址
ipaddr:网口IP地址
serverip:服务端网口地址
gatewayip:子网掩码
netmask:默认网关
boottargs:保存着uboot传递到linux内核的参数
bootcmd:保存着uboot默认的命令,uboot倒计时以后就会执行bootcmd命令

uboot环境变量
下面做一个小实验来对bootcmd自动运行命令进行修改,uboot启动后会开机自动倒数bootdelay秒,如果没有输入进行打断的话就会执行bootcmd参数中的 movi和bootm命令

下面中的movi 命令是完成从inand读取固件kernel(内核固件)读取到DDR内存地址30008000的地方,然后使用bootm命令从DDR内存地址300008000处开始启动内核

bootcmd=movi read kernel 30008000; bootm 30008000

bootcmd 环境变量实验

将bootcmd 环境变量修改成printenv,uboot开机后倒计时完后就会去执行打印环境变量的命令

setenv bootcmd printenv
saveenv

如下图所示uboot开机启动倒计时后开始就执行了printenv命令打印出环境变量

uboot环境变量
setenv bootcmd 'movi read kernel 30008000; bootm 30008000'

uboot环境变量

Original: https://blog.csdn.net/weixin_44316996/article/details/126005701
Author: share666666
Title: uboot环境变量

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/813898/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 零基础入门Python要买什么书容易上手?强烈推荐这五本!!

    Original: https://www.cnblogs.com/zichengPython/p/16696431.htmlAuthor: 爱学习的小刘Title: 零基础入门P…

    Python 2023年10月31日
    085
  • scrapy框架

    scrapy 简介 scrapy是一个专门用于异步爬虫的框架,框架可以理解为是一个被集成了很多功能且具有很强通用性的一个项目模板。 安装 1 终端输入 pip install sc…

    Python 2023年10月5日
    058
  • Python数据可视化之环形图

    1.引言 环形图(圆环)在功能上与饼图相同,整个环被分成不同的部分,用各个圆弧来表示每个数据所占的比例值。但其中心的空白可用于显示其他相关数据展示,相比于标准饼图提供了更丰富的数据…

    Python 2023年8月31日
    070
  • Gym包的安装与使用(新旧版本问题,Atari游戏支持问题)

    参考网页 可以搜索函数用法 可以查看不同环境输出的具体定义 更像是真正的说明文档 从github上指路而来 一些简单的介绍 更像是广告页 github页 也有简单的说明 重要概念 …

    Python 2023年8月2日
    099
  • 配置 conda 镜像环境

    环境: conda/4.11.0 CPython/3.8.8 Windows/10镜像源选用阿里云镜像站anaconda镜像:https://mirrors.aliyun.com/…

    Python 2023年9月9日
    062
  • Gradle 使用maven本地仓库 带来的思考

    Gradle 使用maven本地仓库 带来的思考 本篇主要探究一下 在使用Gradle 的时候一般会配置 maven 的本地仓库的,那是不是Gradle 可以直接使用 maven本…

    Python 2023年10月13日
    037
  • CTF中的Flask之bypass

    前言 继上次发布关于Flask的文章,之后说要结合的例题。今天小小的总结一波,当然这就是入门,最近Flask的题目也比较火热啊。下面我们开始吧。 存在模板注入漏洞的原因 首先在做题…

    Python 2023年8月14日
    062
  • YOLOv5、YOLOX、YOLOv6的分析与比较

    美团的技术团队在最近提出了YOLOv6网络模型,美团在技术文档中重点对比了前两代的YOLOv5和YOLOX,以及百度的PP-YOLOE,在对coco数据集的验证中,YOLOv6不仅…

    Python 2023年11月5日
    071
  • Python:突然发现好看壁纸的都在某度图片库了,这还爬什么壁纸网站?

    用Python把最大的爬虫爬一遍 前言 开发环境 & 第三方模块 代码展示 效果展示 最后 前言 最近忙着又没更新,这不抽出时间了,赶紧来更新! 众所周知,某度本身就是最大…

    Python 2023年8月2日
    056
  • Linux:报错“command not found: yum”及yum和apt-get的区别

    还是最近的工作总结,使用yum命令安装出现了报错,具体看下面 目录 报错 原因 * yum和apt-get的区别 – yum + yum功能 yum特点 yum常用命令…

    Python 2023年11月7日
    042
  • 四十分钟带你玩儿转Python-OpenCV(一)

    14天学习训练营导师课程:李宁《Python Pygame游戏开发入门与实战》李宁《计算机视觉OpenCV Python项目实战》1李宁《计算机视觉OpenCV Python项目实…

    Python 2023年9月27日
    051
  • 浅尝:Django与go-cphttp搭建QQ机器人

    所谓QQ机器人就是对QQ事件产生响应。如戳一戳、加好友申请,文字甚至语音消息等等事件,当你机器人收到这些事件时在服务端产生操作,如回复、发邮件、新建文件夹等等。炉火纯青者可以试试用…

    Python 2023年8月3日
    0130
  • 前端vue+后端Django通信实例,传递json数据

    将前端 Vue 项目和后端 Django 框架联系起来,让他们之间可以通过AXIOS进行通信并且传输数据,在 前端Vue项目中写一个请求函数,这个函数会请求/hello 接口, V…

    Python 2023年11月8日
    041
  • Python基础之day11-模块

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

    Python 2023年9月25日
    050
  • 1.16 过滤序列元素

    您有一个数据序列,您想要从其中使用一些规则来提取所需的值或缩短的序列。 [En] You have a data sequence from which you want to u…

    Python 2023年5月24日
    076
  • python的flask前端显示图片_Python flask框架如何显示图像到web页面

    中,你可以使用模板引擎来将数据传递给 。常用的模板引擎有 Jinja2 和 Mako。本文以 Jinja2 为例进行说明。 首先,在 中,你需要在路由函数中获取要传递给 的数据,然…

    Python 2023年8月14日
    082
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球