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.

[参考译文] TMS320F280041:LIN 中断问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1259805/tms320f280041-lin-interrupt-problems

器件型号:TMS320F280041
主题中讨论的其他器件:C2000WARE

您好!

当使用 LIN_disableSCIInterrupt (LINA_BASE、LIN_SCI_INT_TX)时、它也会禁用 LIN_SCI_INT_RX。 情况也是如此。

还尝试了 可以正常工作的示例 lin_ex2_sci_loopback。 但是、当 在 LIN_writeSCICharBlocking ( 第173行)之后放入 LIN_disableSCIInterrupt (LINA/base、LIN_SCI_INT_TX)时、它也会停止工作。

那么为什么  LIN_disableSCIInterrupt()同时禁用这两者呢?

感谢您的帮助。

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

    您好、Celil:

    感谢您的提问。 如果要单独写入这些寄存器、您可以选择使用 C2000Ware 中的"HWREG*"函数直接写入这些寄存器。

    此致、

    文斯

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

    感谢您的回答。

    LIN_disableSCIInterrupt 使用"|="、这会导致将所有寄存器设置为0、而应该是"="

    这也解决了我 直接调用 HWREG_BP 但使用'='的问题

    此致

    塞利尔