请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:RM48L952 您好!
我在32位访问上遇到异常中断、如以下主题中所述并得到解决:
https://e2e.ti.com/support/microcontrollers/hercules/f/312/p/811890/3004735
如前所述,这一问题已经解决,但最终向我展示了另一个相关问题。
如果我尝试对 EMIF SDRAM 中的64位数据进行任何非4字节对齐访问、RM48会抛出异常中断。 我尝试了所有的 MPU 模式、也禁用了 MPU、但它没有解决。
下面粘贴了用于确定问题的代码
uint64_t * SDRAM_PTR; uint64_t var_test; SDRAM_PTR =(uint64_t *) 0x8000000; VAR_TEST =* SDRAM_PTR;/*读取 OK */
SDRAM_PTR =(uint64_t *) 0x80000001; VAR_TEST =* SDRAM_PTR;//触发中止异常*/
SDRAM_PTR =(uint64_t *) 0x800002; VAR_TEST =* SDRAM_PTR;//触发中止异常*/
SDRAM_PTR =(uint64_t *) 0x800003; VAR_TEST =* SDRAM_PTR;//触发中止异常*/
SDRAM_PTR =(uint64_t *) 0x800004; VAR_TEST =* SDRAM_PTR;/*读取 OK */
提前感谢您的任何帮助