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命令读取并验证数据是否正确存储,这样可以有效测试和调试内存系统。