关于我们

质量为本、客户为根、勇于拼搏、务实创新

< 返回新闻公共列表

uboot下内存操作mw和md命令详解

发布时间:2023-06-26 19:00:13

mw简介

u-boot 中的 mw 命令是用于向内存写入数据的命令,它有4种形式:


mw.b - 写入 1 个字节(8 比特)的数据

mw.w - 写入 1 个字(2 字节,16 比特)的数据

mw.l - 写入 1 个长字(4 字节,32 比特)的数据

mw.q - 写入 1 个四字(8 字节,64 比特)的数据

它们的语法格式是:

mw.b address, value

mw.w address, value

mw.l address, value

mw.q address, value

其中:

address 是写入数据的内存地址

value 是要写入的数据,它的宽度由命令类型决定(b为8比特,w为16比特,l为32比特,q为64比特)

这些命令通常在u-boot命令行中使用,用于在系统启动过程中测试和调试内存系统。

mw举例

举几个例子:

=> mw.b 0x100, 0x12 # 往内存地址0x100写入字节数据0x12 => mw.w 0x200, 0x3456 # 往内存地址0x200写入字数据0x3456 => mw.l 0x300, 0x789A # 往内存地址0x300写入长字数据0x789A => mw.q 0x400, 0x0123456789ABCDEF # 往内存地址0x400写入四字数据

   


md 命令简介

u-boot中的md命令用于从内存中读取数据。它有4种形式:


md.b - 读取1个字节(8比特)的数据

md.w - 读取1个字(2字节,16比特)的数据

md.l - 读取1个长字(4字节,32比特)的数据

md.q - 读取1个四字(8字节,64比特)的数据

它们的语法格式是:

md.b address

md.w address

md.l address

md.q address

其中address是要读取数据的内存地址。

这些命令会从指定内存地址读取对应宽度的数据,并将其打印出来,以便我们查看内存中的内容。

md举例

举几个例子:

=> md.b 0x100 0x100: 0x12  => md.w 0x200 0x200: 0x3456  => md.l 0x300 0x300: 0x789A  => md.q 0x400 0x400: 0x0123456789ABCDEF

   

和mw命令一样,md命令也允许我们指定不同宽度从内存中读取数据。这使我们能查看内存中不同粒度的数据内容,来判断数据是否正确存储或是否与预期相符。

md命令经常与mw命令一同使用,我们首先使用mw命令向内存写入一些测试数据,然后使用md命令读取并验证数据是否正确存储,这样可以有效测试和调试内存系统。



/template/Home/leiyu/PC/Static