大神好,在一块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,接着取数,就都是正确的了。大神,求指导,求解释,不胜感激~~~
Tony Tang:
Dramy,
请问用的是哪个芯片?
最好将你的代码贴上来,方便大家理解。