硬件错误中断中,打印了mepc=0x252C7748,MCAUSE=0x00000002,MTVAL=0x0000AE86.
这个看不大懂,MCAUSE=2是代表非法指令,那mepc此时存储的是进入异常前的PC指针吗,可是这个地址在573的RAM范围之外了。该怎么确定问题,解读这三个寄存器?
热门产品 :
CH182: 以太网PHY收发器芯片
硬件错误中断中,打印了mepc=0x252C7748,MCAUSE=0x00000002,MTVAL=0x0000AE86.
这个看不大懂,MCAUSE=2是代表非法指令,那mepc此时存储的是进入异常前的PC指针吗,可是这个地址在573的RAM范围之外了。该怎么确定问题,解读这三个寄存器?
另外在.list文件中搜索不到0xAE86的指令,只有0xAE84,0xAE88
可以尝试多打印几次该值,看看是否为相同的值。
出现上述情况一般为代码书写问题。
注意检查代码的RAM分配情况,如是否申请内存未释放/内存泄漏等。