This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TM4C123B I2C 访问进入Fault ISR

MCU I2C0 作为slave mode;

I2C4 作为master mode 跟其他的MC通过I2C通讯;

I2C4 跟其他MC通过I2C通讯的时候,先作为Master 发送数据,再作为slave接受其他MC发送回来的数据;

MCU I2C0 一直作为slave来用;

测试发现,在跑一段时间后,MCU进入了FAULT ISR状态,不能响应命令了。

请各位专家帮忙。谢谢。

  • 1. 增大你的堆栈,看问题能不能解决。一般运行一段时间后进入Fault ISR有很大概率是堆栈溢出造成的。

    2. 先确定是I2C0还是I2C4导致进入Fault ISR中断的。

    3. 确定进入Fault ISR前的操作。具体办法就是在FAULT ISR如口设置断点,然后查看LR寄存器的值,从而找到调用前的函数地址。