主题中讨论的其他器件: TMS320F280049C、 SysConfig
工具/软件:
我在 TMS320F28P550SG 上遇到一个虚假 PIE 组 8 中断。 在 JTAG 调试下运行时、PIE 中断矢量 88 将被默认 ISR 处理程序触发并捕获。 这是中断 8.1、即 I2CA 中断。 但是、问题是未使用 I2C、LIN 或 SCI-C 也不是 PIE 组 8 中的其他外设。 请注意、当未在调试模式下运行时、它可能会在默认 ISR 处理程序中捕获到停顿。
我已在未处理的中断中读取这些寄存器、以了解触发中断的是什么
1. PIEIER8 为全零
2. PIEIFR8 为全零
3. IER.INT8 为零
4. IFR.INT8 为零
5. IFR.INT9 为零
这表明不应触发任何中断、因此我不明白导致这种情况的原因。
我已确认在我的代码和生成 syscfg 代码中使用了正确的 SCI 寄存器基地址
添加的代码更改导致出现此问题:
-将 SCI-A 设置添加到 syscfg
-添加使用 SCI-A 的代码
-为 ISR-to-task 和 Task-to-task sempahore 信令添加 FreeRTOS 任务通知。
调用 ISR 到任务通知时会出现该问题。 大概来说、全局中断启用/禁用允许正在发生的任何内容传播。
了解此类型关断问题的建议步骤是什么?
请注意、我要使用相同的 SCI 和中断处理从 TMS320F280049C 移植代码。 由此我可以看出、这两个处理器之间的 SCI 功能/API 是相同的。



