请教一个从SDRAM里提取数据的问题

[复制链接]
1436|5
 楼主| tj_leo 发表于 2013-9-11 10:58 | 显示全部楼层 |阅读模式
大神好,在一块SDRAM里,从地址0x450000开始一共存了16块数据,每块数据8192word,但是只有前4096word有效。所以我采取了以下方式取数:首先#define source 0x450000,然后定义了一个指针 unsigned int* p=(unsigned int* )source;最后在while循环里每次让p+8192,然后对应取数,每个数据块取682个数。结果,最终得到的数组里,前5463个数(一共10550个数)是对的,后面的都是错的。为什么呢?后来我重新定义了一个long型数a用来存0x450000,然后每次a=a+8192,然后p=(unsigned int* )a,接着取数,就都是正确的了。大神,求指导,求解释,不胜感激~~~
biechedan 发表于 2013-9-11 23:29 | 显示全部楼层
应该是8192*4吧
biechedan 发表于 2013-9-11 23:30 | 显示全部楼层
1个word是2个字节吧 你的寻址方式是32的吧?
 楼主| tj_leo 发表于 2013-9-12 18:20 | 显示全部楼层
biechedan 发表于 2013-9-11 23:30
1个word是2个字节吧 你的寻址方式是32的吧?

谢谢大神回复,我用sizeof看了一下,是4个字节,看来是32位的。不知道大神对CMD文件编写有研究吗?
biechedan 发表于 2013-9-24 23:49 | 显示全部楼层
tj_leo 发表于 2013-9-12 18:20
谢谢大神回复,我用sizeof看了一下,是4个字节,看来是32位的。不知道大神对CMD文件编写有研究吗? ...

这个还真的不会的。
zhangmangui 发表于 2013-9-25 09:02 | 显示全部楼层
数据类型和数据宽度的问题吧   
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

14

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部