<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic CAN PAL Usage Issues with the S32K142 MCU in S32K</title>
    <link>https://community.nxp.com/t5/S32K/CAN-PAL-Usage-Issues-with-the-S32K142-MCU/m-p/2288811#M55898</link>
    <description>&lt;P&gt;When using the code generated by &lt;STRONG&gt;CAN PAL&lt;/STRONG&gt; to receive messages, all information of the &lt;STRONG&gt;first received message is displayed as 0&lt;/STRONG&gt; (the corresponding message is refreshed after exiting the interrupt). The data in the &lt;STRONG&gt;second receive interrupt works normally&lt;/STRONG&gt;. Thank you for your help!&lt;/P&gt;&lt;P&gt;CAN_Init(&amp;amp;can_pal2_instance, &amp;amp;can_pal2_Config0);&lt;BR /&gt;CAN_InstallEventCallback(&amp;amp;can_pal2_instance, &amp;amp;CAN2_RXTXMsgHandle, (void*)0);&lt;/P&gt;&lt;P&gt;CAN_ConfigRxBuff(&amp;amp;can_pal2_instance, gs_CANRxIDMsgInfo.buffIdx, &amp;amp;gs_CANRxIDMsgInfo.config, 0x02160000);&lt;BR /&gt;CAN_SetRxFilter(&amp;amp;can_pal2_instance,CAN_MSG_ID_EXT,0,0x1fffe200);&lt;BR /&gt;CAN_Receive(&amp;amp;can_pal2_instance, 0, &amp;amp;gs_RXCANMsg);&lt;/P&gt;&lt;P&gt;void CAN2_RXTXMsgHandle(uint32_t instance,&lt;BR /&gt;can_event_t eventType,&lt;BR /&gt;uint32_t objIdx,&lt;BR /&gt;void *driverState)&lt;BR /&gt;{&lt;/P&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; switch(eventType)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; {&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; case CAN_EVENT_RX_COMPLETE:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; //CAN_Receive(&amp;amp;can_pal2_instance, 0, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; id_can_rx[id_count++] = gs_RXCANMsg.id;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;//When powered on, the breakpoint here shows all zeros for the first time.&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;//CAN_Receive(&amp;amp;can_pal1_instance, RX_MAILBOX, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;#if 1&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CAN_Receive(&amp;amp;can_pal2_instance, 0, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CAN_Receive(&amp;amp;can_pal2_instance, 4, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;//CAN_Receive(&amp;amp;can_pal1_instance, gs_CANRxPhyIDMsgInfo.buffIdx, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;#endif&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; case CAN_EVENT_TX_COMPLETE:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //TP_DoTxMsgSuccesfulCallback();&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; default:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; }&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;}&lt;/DIV&gt;&lt;/DIV&gt;</description>
    <pubDate>Tue, 06 Jan 2026 13:51:23 GMT</pubDate>
    <dc:creator>ykd</dc:creator>
    <dc:date>2026-01-06T13:51:23Z</dc:date>
    <item>
      <title>CAN PAL Usage Issues with the S32K142 MCU</title>
      <link>https://community.nxp.com/t5/S32K/CAN-PAL-Usage-Issues-with-the-S32K142-MCU/m-p/2288811#M55898</link>
      <description>&lt;P&gt;When using the code generated by &lt;STRONG&gt;CAN PAL&lt;/STRONG&gt; to receive messages, all information of the &lt;STRONG&gt;first received message is displayed as 0&lt;/STRONG&gt; (the corresponding message is refreshed after exiting the interrupt). The data in the &lt;STRONG&gt;second receive interrupt works normally&lt;/STRONG&gt;. Thank you for your help!&lt;/P&gt;&lt;P&gt;CAN_Init(&amp;amp;can_pal2_instance, &amp;amp;can_pal2_Config0);&lt;BR /&gt;CAN_InstallEventCallback(&amp;amp;can_pal2_instance, &amp;amp;CAN2_RXTXMsgHandle, (void*)0);&lt;/P&gt;&lt;P&gt;CAN_ConfigRxBuff(&amp;amp;can_pal2_instance, gs_CANRxIDMsgInfo.buffIdx, &amp;amp;gs_CANRxIDMsgInfo.config, 0x02160000);&lt;BR /&gt;CAN_SetRxFilter(&amp;amp;can_pal2_instance,CAN_MSG_ID_EXT,0,0x1fffe200);&lt;BR /&gt;CAN_Receive(&amp;amp;can_pal2_instance, 0, &amp;amp;gs_RXCANMsg);&lt;/P&gt;&lt;P&gt;void CAN2_RXTXMsgHandle(uint32_t instance,&lt;BR /&gt;can_event_t eventType,&lt;BR /&gt;uint32_t objIdx,&lt;BR /&gt;void *driverState)&lt;BR /&gt;{&lt;/P&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; switch(eventType)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; {&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; case CAN_EVENT_RX_COMPLETE:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; //CAN_Receive(&amp;amp;can_pal2_instance, 0, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; id_can_rx[id_count++] = gs_RXCANMsg.id;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;//When powered on, the breakpoint here shows all zeros for the first time.&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;//CAN_Receive(&amp;amp;can_pal1_instance, RX_MAILBOX, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;#if 1&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CAN_Receive(&amp;amp;can_pal2_instance, 0, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;CAN_Receive(&amp;amp;can_pal2_instance, 4, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;//CAN_Receive(&amp;amp;can_pal1_instance, gs_CANRxPhyIDMsgInfo.buffIdx, &amp;amp;gs_RXCANMsg);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;#endif&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; case CAN_EVENT_TX_COMPLETE:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; //TP_DoTxMsgSuccesfulCallback();&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; default:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; }&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;}&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Tue, 06 Jan 2026 13:51:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/CAN-PAL-Usage-Issues-with-the-S32K142-MCU/m-p/2288811#M55898</guid>
      <dc:creator>ykd</dc:creator>
      <dc:date>2026-01-06T13:51:23Z</dc:date>
    </item>
    <item>
      <title>回复： CAN PAL Usage Issues with the S32K142 MCU</title>
      <link>https://community.nxp.com/t5/S32K/CAN-PAL-Usage-Issues-with-the-S32K142-MCU/m-p/2289082#M55913</link>
      <description>&lt;P&gt;At present, the issue is resolved when CAN2_RXTXMsgHandle is placed in the main.c file. Previously, this problem occurred when it was defined in maclcom_can.c (located in the subfolder macl_can under the mcal folder). Why does this happen?&lt;/P&gt;</description>
      <pubDate>Wed, 07 Jan 2026 04:01:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/CAN-PAL-Usage-Issues-with-the-S32K142-MCU/m-p/2289082#M55913</guid>
      <dc:creator>ykd</dc:creator>
      <dc:date>2026-01-07T04:01:59Z</dc:date>
    </item>
    <item>
      <title>回复： CAN PAL Usage Issues with the S32K142 MCU</title>
      <link>https://community.nxp.com/t5/S32K/CAN-PAL-Usage-Issues-with-the-S32K142-MCU/m-p/2289306#M55941</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;DIV&gt;when moving CAN2_RXTXMsgHandle into main.c makes the problem disappear, the most likely cause is a linkage / multiple-definition issue for your RX buffer or related globals, not the CAN PAL itself.&lt;BR /&gt;Be sure all shared RX/TX buffers declared once in a .c file, use&amp;nbsp;extern in headers.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;BR, Petr&lt;/DIV&gt;</description>
      <pubDate>Wed, 07 Jan 2026 09:28:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/CAN-PAL-Usage-Issues-with-the-S32K142-MCU/m-p/2289306#M55941</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2026-01-07T09:28:51Z</dc:date>
    </item>
  </channel>
</rss>

