Microchip
直播中

王明钊

8年用户 228经验值
私信 关注
[问答]

仅当使用引导加载程序加载应用程序时,写入EBI Sram会导致崩溃怎么办

嗨,我有一个应用程序已经运行了好几个月了,我刚才第一次尝试使用引导加载器加载程序。CPU是PIC32MZ2048ECH144,我使用的是XC32 V1.40,HARMony v1_06_02I使用的是USART Basic引导加载器示例,它似乎正在加载程序。应用程序可以。除了使用EBI接口对外部SRAM进行读写之外,我可以执行应用程序的所有原始功能。当我试图在地址0xE0000000处写入SRAM时,程序崩溃。*appData.buff_head=appData.x_.;appData.buff_head++;查看我得到的寄存器。BuffyHead =(Uti1616T*)SRAMYADDRYSCS0;//在EDI* BuffyHead=0xAABB中启动RAM;这工作正常。我预期链接文件BTLY.MZ.LD存在问题,我已经更名为BTLYMX.LNK,并附在这里。我已经看过了,但是我找不到任何看起来错误的东西。/*NETYLO1= RI & LT;31 & G.X&LT;30>;0<29:26>;PFN<;25:6>;C<;5:6>;D<_:5:3>_;D>;2>>;D<_;1>>;1>>;0> 30>;30>;30>;30>;30>;30>;30>;30>;30>;30>;30>;30>;30>;30>;0>;30>;30>;0>;30>;30>;0>;30>;_ebi_kseg3_._base_addr=0xE0000000) ;EXTERN(_pic32_init_ebi_kseg3_.)al_base_addr)PROVIDE(u pic32_ini_ebi_ebi_ebi_ebi_串串_串串_ebi_ebi_ib_ebi_ebi_ebi_磅_串串_加器)PROVIDE(u基础_addr)PROVIDE(u 3)PROVIDE(u pic32_ini_ini_ini_ini_ini_ebi_ebi_ebi_eb_ebi 3_eb_串串_kseg3_串_串_物理_基础_基础_3_基础_基础_基础_基础_基础_基础_基础_基础_基础_基础_基础_加3_基础_加3_基础_基础_加_加_加_加_加_ID<7:0>*/u pic32_tlb_3_entryhi=u pic32_in这看起来还不错,但是我对此没什么经验。任何最值得感激的帮助似乎都被困在这里了。谢谢,罗伊

回帖(1)

唐红菊

2020-5-12 09:11:59
我真的不明白你想要完成什么。默认链接器脚本生成的TLB条目为EBI和SQI区域设置静态映射,实际上不需要对其进行更改,只要确保启动代码可以使用它们来初始化MMU。MIPS MMU不支持32 MB页面(请参阅CP0.PuffMeScript寄存器的定义)。此外,如果你觉得需要改变页面大小之类的东西,你也必须相应地修改MMU初始化代码。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分