主题中讨论的其他器件:MSPM0G3507
工具与软件:
尊敬的支持者和工程师:
我正在尝试使用 MSPM03507实现 LIN 通信。
因此、我曾尝试使用"C:\ti\mspm0_sdk_2_02_00_05\examples\nortos\LP_MSPM0G3507\LIN\LIN_RESPON"路径中的示例代码、但这远不符合我的设计目的、因此我想再询问另一个示例。
我将和大家分享实施 LIN 通信时出现的问题。
问题1.
要从控制器传输到从板的 RX 数据具有以下格式:
因此、我计划使用9位地址模式方法。
初始化设置已按如下方式进行更改:
但是、还需要配置尚未在 SYSCOFIG 中设置的器件。
查看寄存器状态、
我认为、LCRH 寄存器的位0应设置为1、INTCTL 寄存器的位0应设置为1。
或者、您可以考虑将 EVT_MODE 寄存器的位1和位0设置为1、以将中断清除方法修改为硬件方法而不是软件方法。 (但是、我没有尝试、因为我没有有关硬件自动清除条件的信息。)
问题2.
使用"C:\ti\mspm0_sdk_2_02_00_05\examples\nortos\LP_MSPM0G3507\LIN\LIN_RESPONER"中的示例代码执行 LIN 通信时、不会发生 LIN_0_INST_IRQHandler 中断。
当在调试模式下执行 LIN 通信并在 LIN_0_INST_IRQHandler 的第一句中有中断时、必须在 RXINT、LINC0、RXPE 和 RXNE 条件设置为中断屏蔽时生成中断、但即使发送了与顶部图片类似的 RX 信号、也不会发生中断。
不过、如果您通过调试模式直接将 UART0_INT_EVENT0_ISET 寄存器中的位设置为1、则会在 INTERRUPT 语句中进入一个 BREAK。
因此、我怀疑与中断相关的标志似乎没有被设置为1、即使这是一个中断发生情况也是如此。
我期待着对这些问题作出迅速的反应。
如果您需要任何进一步的信息-请随时提问!
Donguk