在U-boot下可以通过md和mw命令操作DDR内存,具体用法如下:
mw命令格式:
mw - memory write (fill) Usage:
mw [.b, .w, .l] address value [count]
写数据到DDR中:
mw.b 0x20000000 0x12 //数据长度为8位
mw.w 0x20000000 0x1234 //数据长度为16位
mw.l 0x20000000 0x12345678 //数据长度为32位
md命令格式:
md - memory display
Usage:
md [.b, .w, .l] address [# of objects]
从DDR中读取数据:
md.b 0x20000000 0x4 //数据长度为8位,读取4个数据
md.w 0x20000000 0x4 //数据长度为16位,读取4个数据
md.l 0x20000000 0x4 //数据长度为32位,读取4个数据
在Linux下可以通过devmem命令操作DDR内存,具体用法如下:
devmem命令格式:
Usage: devmem ADDRESS [WIDTH [VALUE]] Read/write from physical address
ADDRESS Address to act upon
WIDTH Width (8/16/...)
VALUE Data to be written
写数据到DDR中:
devmem 0x20000000 8 0x12 //数据长度为8位
devmem 0x20000000 16 0x1234 //数据长度为16位
devmem 0x20000000 32 0x12345678 //数据长度为32位
从DDR中读取数据:
devmem 0x20000000 8 //数据长度为8位
devmem 0x20000000 16 //数据长度为16位
devmem 0x20000000 32 //数据长度为32位

本文详细介绍了在U-boot环境下使用md和mw命令,以及在Linux环境下使用devmem命令操作DDR内存的方法。包括如何写入和读取不同长度的数据,适用于嵌入式系统开发人员和技术爱好者。
563

被折叠的 条评论
为什么被折叠?



