打印

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

[复制链接]
1091|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文件编写有研究吗?

使用特权

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

这个还真的不会的。

使用特权

评论回复
6
zhangmangui| | 2013-9-25 09:02 | 只看该作者
数据类型和数据宽度的问题吧   

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

7

主题

14

帖子

1

粉丝