我们使用的是 am5728,但在运行程序时,它将出现无法解释的崩溃
1.程序在裸机中的 cortex-a15内核上运行,仅使用 IRQ 中断;
2.当 ARM 内核崩溃时、程序不会进入任何中止模式、并且 xds200仿真器无法停止 ARM 内核,指示:目标 CPU 停止时出现故障:(错误-1323@800106E4);
通常、存储器对齐和非法地址访问的错误会导致 ARM 进入中止模式。 然后、我们想知道还有哪些其他原因会导致 ARM 崩溃、而不会进入中止模式;
4.在我们尝试修改堆栈空间的配置后、它可能不会崩溃。 但是、如果我们继续修改应用程序、它将继续崩溃。 我们认为硬件是可以的;
5.在发生崩溃时,我们使用 JTAG 来获取 ETB 数据。 我们发现、发生碰撞时、指令运行混乱、每次碰撞的位置不是完全相同、
EDMA3EnableEvtIntr (无符号长整型、无符号长整型) 0x80001A64 b #0x80001aa4
未知_ 0x800d06c0_ 0x800d07d3_ memset () 0x800D0720 subr4、R4、#0x10
例如、如果程序运行到0x80001a64、则应使用 b 指令跳转到0x80001aa4、但捕获的 ETB 数据显示它异常跳转到0x800d0720。 导致此误差的原因是什么?