看了一些网上的资料,总结一下:
一般实验板的SDRAM挂接在S3C2440的BANK6,即地址从0x30000000开始。我们使用ADS编写程序是,由于程序要加载到SDRAM中运行,所以,程序的起始地址同样要设置成0x30000000。
如果设置了0x30000000,那么假如代码里有一个标号label,这个标号对应的地址就会从0x30000000开始算起,当你通过这个 label 绝对跳转的时候,就是跳转到0x30000000以上的内存的位置,所以说如果设置了0x300000000,但你你把代码放到SRAM里执行(SRAM的地址是0-4k),就会出错。
程序是先下载到SDRAM中,然后通过nand write命令从SDRAM中拷贝存储到NandFlash的。
本文探讨了SDRAM与SRAM在不同地址范围的使用冲突,并提供了将程序代码正确放置以避免错误的方法。
5058

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



