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.

[参考译文] RM46L852:如何获取中断 ID?

Guru**** 2524550 points
Other Parts Discussed in Thread: SEGGER

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1545448/rm46l852-how-to-get-interrupt-id

部件号:RM46L852
主题中讨论的其他部件:SEGGER

工具/软件:

您好!

我正在使用针对 C11 配置的 TI ARM 编译器构建一个工程。

我正在努力 识别当前的有效中断。

以下是更多上下文:

我正在尝试为 TI RM46 移植 SEGGER SystemView。
此端口的一部分是获取中断“ID"的“的函数。
您可以在下面看到函数签名:

u32 SEGGER_Sysview_X_GetInterruptId (void)

此数字可以是任何值、但我想我可以使用将 VIM 偏移用作 ID IRQINDEX

U32 SEGGER_SYSVIEW_X_GetInterruptId(void)
{
    uint32_t const irq_index = (vimREG->IRQINDEX);
    return irq_index;
}

 

这一战略不起作用。 无论触发了什么中断、它始终读为 0。

您是否对如何可靠地识别当前的 IRQ/FIQ 有建议?

此致、
Gabriel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Gabriel、

    对延迟的回复表示歉意。

    您是正确的、我认为您可以使用“IRQINDEX"寄存“寄存器来验证当前有效中断。

    例如、我测试了 SCI/LIN 中断:

    正如你所看到的,它给了我 14 这:

    如果我们验证数据表、则它仅对应于 LIN1/SCI 中断:

    此寄存器中的 0 表示无 — 有效中断,因此每个 IRQ 请求都添加 1。

    --

    此致、
    Jagadish。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢 

    我会查看的