当前位置: 首页 > news >正文

U-BOOT

使用正点原子已经移植好的U-BOOT编译完成后拷贝到SD卡中烧写到板子上中,将开发板设为SD卡启动模式,上电启动开发板;打开 MobaXterm 终端模拟软件,设置好串口参数连接开发板 USB 调试串口,最后按核心板上的 PS_RST 复位按钮复位开发板,在串口终端出现“Hit any key to stop autoboot:”倒计时时按下enter键打断它自动启动Linux内核,进入U-BOOT命令行模式:(help里用于一些具体的指令)

查看板卡信息:

 

1.信息查询有关的命令有 3 个:bdinfo、printenv 和 version :

 2.1.环境变量的操作涉及到两个命令:setenv 和 saveenv,命令 setenv 用于设置或者修改环境变量的值。命令 saveenv 用于保存修改后的环境变量,一般环境变量是存放在外部 flash中的,uboot 启动的时候会将环境变量从 flash 读取到 DRAM 中。所以使用命令 setenv 修改的是 DRAM 中的环境变量值,修改以后要使用 saveenv 命令将修改后的环境变量保存到 flash
中,否则的话 uboot 下一次重启会继续使用以前的环境变量值。比如我们要将环境变量 bootdelay 该为 5,就可以使用如下所示命令:(修改 bootdelay 以后,重启开发板,uboot 就是变为 5 秒倒计时)

setenv bootdelay 5
saveenv

2.2命令 setenv 也可以用于新建命令,用法和修改环境变量一样,比如新建一个环境变量 author,author 的值为“alientek”:

setenv author alientek
saveenv

新建命令 author 完成以后重启 uboot,然后使用命令 printenv 查看当前环境变量

2.3删除环境变量也是使用命令setenv,要删除一个环境变量只要给这个环境变量赋空值即可,比如删除掉上面新建的author 这个环境变量:

setenv author
saveenv

操作如下:

3.内存操作命令:

命令中的[.b .w .l]对应 byte、word 和 long,也就是分别以 1 个字节、2 个字节、4 个字节来显示内存值。address 就是要查看的内存起始地址,[# of objects]表示要查看的数
据长度,这个数据长度单位不是字节,而是跟你所选择的显示格式有关。比如你设置要查看
的内存长度为 20(十六进制为 0x14),如果显示格式为.b 的话那就表示 20 个字节;如果显示
格式为.w 的话就表示 20 个 word,也就是 20*2=40 个字节;如果显示格式为.l 的话就表示 20
个 long,也就是 20*4=80 个字节。另外,uboot 命令中的数字都是十六进制的,不是十进制的。

比如你想查看以 0X8000000 开始的 20 个字节的内存值,显示格式为.b 的话,应该使用如
下所示命令:md.b 8000000 14。而不是:md.b 8000000 20。下面三个命令是有区别的,分别代表16个、32个、64个字节

md.b 8000000 10
md.w 8000000 10
md.l 8000000 10

4.nm命令:修改指定地址内存值

5.mm命令:也是修改指定地址内存值的,使用 mm 修改内存值的时候地址会自增,而使用命令
nm 的话地址不会自增

6.mw命令:使用一个指定的数据填充一段内存

7.cp 是数据拷贝命令,用于将 DRAM 中的数据从一段内存拷贝到另一段内存。使用.l 格式将 0x8000000 处的地址拷贝到 0X8000100 处,长度为 0x10 个内存块(0x10 * 4=64 个字节)

8.cmp 是比较命令,用于比较两段内存的数据是否相等

http://www.xdnf.cn/news/431263.html

相关文章:

  • talk-centos6之间实现
  • 记忆化回溯搜索-@cache --> 动态规划
  • DevExpressWinForms-布局容器之GroupControl
  • MongoDB+Nginx高可用技术方案
  • springboot3+vue3融合项目实战-大事件文章管理系统-新增文章分类
  • 物理:从人体组成角度能否说明基本粒子的差异性以及组织结构的可预设性?
  • 蓝桥杯题库经典题型
  • [传输层]TCP协议
  • Python Day 24 学习
  • Docker疑难杂症解决指南
  • 一个电源上 有+ - 接地的符号
  • kubernetes-harbor镜像仓库使用自签https证书
  • Linux干货(一)
  • 动态规划问题 -- 多状态模型(打家劫舍II)
  • 磁光克尔效应在量子计算中的应用
  • GNSS数据自动化下载系统的设计与实现
  • udp多点通信和心跳包
  • 在scala中使用sparkSQL读入csv文件
  • python中的进程锁与线程锁
  • Mysql 事物
  • React状态管理-对state进行保留和重置
  • FCB文件疑问+求助:01 百度网盘视频自动生成AI笔记pdf会出现对应fcb文件-作用待详解
  • FFmpeg3.4 libavcodec协议框架增加新的decode协议
  • INFINI Console 纳管 Elasticsearch 9(一):指标监控、数据管理、DSL 语句执行
  • 深入理解 C++ 标准模板库(STL):从基础到实践
  • 不用mathtype将word中的公式修改成新罗马字体(加编号)
  • Android设备是否满足硬件要求
  • R-tree详解
  • 快速幂算法详解
  • 【前端】【JavaScript】【总复习】四万字详解JavaScript知识体系