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:如何在 canStatusChangeNotification ISR 中获取消息框 ID?

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1220343/rm46l852-how-to-get-the-message-box-id-inside-the-canstatuschangenotification-isr

器件型号:RM46L852
主题中讨论的其他器件:HALCOGEN
您好!

如何在 canStatusChangeNotification ISR 中获取消息框 ID
我尝试了以下没有成功。
void canStatusChangeNotification(canBASE_t *node, uint32 notification)
{
    if ((notification & canLEVEL_RxOK) != 0)
    {
        // Wait until IF2 is ready for use
        while ((node->IF2STAT & 0x80U) == 0x80U)
        {
        }
        uint8_t const msgbox = node->IF2NO;
    }
 }

 

在上下文环境中、以下尝试执行的操作:

我想知道我的消息框每秒接收到多少个 CAN 帧、以确保总线上的其他器件没有超时。
请注意、我不一定要使用消息框内的数据;只需知道从收到消息以来经过了多长时间。

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

    我看了 HalCoGEn 示例和 FAQ 没有成功。

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

    尊敬的 Gabriel:

    看起来 FAQ 并不指向正确的页面、

    您能重塑吗?

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

    Jagadish、您好!

    很高兴您关注此问题。
    此处是常见问题解答链接 software-dl.ti.com/.../index.html

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

    尊敬的 Gabriel:

    感谢您共享该链接、现在我将完成全部内容。

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

    尊敬的 Gabriel:

    据我了解、 WakeUpPnd、RxOk、TxOk 和 LEC 等所有状态变化中断都是 CAN 级中断、它们不是消息框级中断。

    我想知道为什么在这些中断中需要消息框编号?

    --

    谢谢。此致、
    Jagadish。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    当然:
    我有少量 CAN 消息。
    因此、我可以负担得起每个 CAN ID 的属性1消息框。
     
    我想使用 ISR 来了解给定消息框最后一次接收消息的时间。
    目标是确保总线上的节点不会超时。



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

    尊敬的 Gabriel:

    感谢您提供详细信息。 我将在结束时对其进行测试并向您更新。

    --

    谢谢。此致、
    Jagadish。

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

    尊敬的 Gabriel:

    您能否尝试做下面的事情、

    是否可以验证中断挂起寄存器值以获取报文对象编号?

    在状态更改通知处理器中、只需针对不同的报文对象读取该寄存器、具体请参见。

    --

    谢谢。此致、
    Jagadish。