<?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>S32KのトピックRe: S32K144</title>
    <link>https://community.nxp.com/t5/S32K/S32K144/m-p/1741835#M27917</link>
    <description>thank you very much, but, i want to konw how to solve this problem,hope your reply</description>
    <pubDate>Wed, 18 Oct 2023 06:31:26 GMT</pubDate>
    <dc:creator>zq1</dc:creator>
    <dc:date>2023-10-18T06:31:26Z</dc:date>
    <item>
      <title>S32K144</title>
      <link>https://community.nxp.com/t5/S32K/S32K144/m-p/1714566#M26638</link>
      <description>&lt;P&gt;i am using&amp;nbsp; lin api sdk to build my project&amp;nbsp; ,but sometimes , send data will enter&amp;nbsp;LIN_READBACK_ERROR,&lt;/P&gt;&lt;P&gt;below&amp;nbsp; is my lincallback:&lt;/P&gt;&lt;P&gt;LIN_DRV_Init(INST_LIN1, &amp;amp;lin1_InitConfig0, &amp;amp;lin1_State);&lt;BR /&gt;LIN_DRV_InstallCallback(INST_LIN1, LINCallBack);&lt;BR /&gt;LIN_DRV_EnableIRQ(INST_LIN1);&lt;BR /&gt;INT_SYS_EnableIRQ(LPUART2_RxTx_IRQn);&lt;BR /&gt;INT_SYS_EnableIRQGlobal();&lt;/P&gt;&lt;DIV&gt;void LINCallBack(uint32_t instance, void * linState)&lt;/DIV&gt;&lt;DIV&gt;{&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; static LIN_Message_T Lin_msg_temp ={0};&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;(void)instance;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;const lin_state_t * linCurrentState = linState;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Lin_msg_temp.id = linCurrentState-&amp;gt;currentId;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;status_t result = STATUS_UNSUPPORTED;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;switch (linCurrentState-&amp;gt;currentEventId)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;case LIN_PID_OK:&amp;nbsp; //正确帧头事件&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;if(0x3C == Lin_msg_temp.id)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;//LIN_DRV_SetTimeoutCounter(INST_LIN1, 8);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;result = LIN_DRV_ReceiveFrameData(INST_LIN1, g_aLINRxBuf, 8u);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;if(result != STATUS_SUCCESS)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp;else if(0x3D == Lin_msg_temp.id)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; LIN_UDS_Tx_Processor();&lt;/DIV&gt;&lt;DIV&gt;// &amp;nbsp; &amp;nbsp; LIN_DRV_SendFrameData(INST_LIN1,UnSegDataReq.MessageTxData, UnSegDataReq.Length);&lt;/DIV&gt;&lt;DIV&gt;// LIN_DRV_SetTimeoutCounter(INST_LIN1, 8);&lt;/DIV&gt;&lt;DIV&gt;// result = LIN_DRV_SendFrameData(INST_LIN1, g_aLINTxBuf, sizeof(g_aLINTxBuf));&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;case LIN_TX_COMPLETED:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;if(tx_finished == true)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;LIN_UDS_NL_USData_Con(&amp;amp;UnSegDataCon,&amp;amp;UnSegDataReq, pci_type);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;tx_finished =false;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;// pci_type = Unknown;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;case LIN_RX_COMPLETED:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;for(uint8 i = 0;i&amp;lt;sizeof(g_aLINRxBuf);i++)&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Lin_msg_temp.data[i] = g_aLINRxBuf[i];&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;Lin_msg_temp.length = linCurrentState-&amp;gt;rxSize;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;LIN_UDS_Receive_Message_FI(Lin_msg_temp);&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;case LIN_CHECKSUM_ERROR:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;num++;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;case LIN_FRAME_ERROR:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;case LIN_READBACK_ERROR:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;num--;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;case LIN_WAKEUP_SIGNAL:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;default:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; /* do nothing */&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;break;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;}&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;i want to know how to deal with the&amp;nbsp;LIN_READBACK_ERROR and why&amp;nbsp;LIN_READBACK_ERROR occurs&lt;/DIV&gt;&lt;DIV&gt;hope you人reply&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 31 Aug 2023 02:46:53 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K144/m-p/1714566#M26638</guid>
      <dc:creator>zq1</dc:creator>
      <dc:date>2023-08-31T02:46:53Z</dc:date>
    </item>
    <item>
      <title>Re: S32K144</title>
      <link>https://community.nxp.com/t5/S32K/S32K144/m-p/1717228#M26787</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;
&lt;P&gt;for LIN transmitted byte is monitored back, if not the same, a transmission is stopped and LIN state is set to idle. The&amp;nbsp;LIN_READBACK_ERROR event is called when LIN master is sending payload/checksum and received byte is not the same as transmitted one. Driver finally sets current state to IDLE after returning from callback.&lt;/P&gt;
&lt;P&gt;BR, Petr&lt;/P&gt;</description>
      <pubDate>Tue, 05 Sep 2023 13:26:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K144/m-p/1717228#M26787</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2023-09-05T13:26:15Z</dc:date>
    </item>
    <item>
      <title>Re: S32K144</title>
      <link>https://community.nxp.com/t5/S32K/S32K144/m-p/1741835#M27917</link>
      <description>thank you very much, but, i want to konw how to solve this problem,hope your reply</description>
      <pubDate>Wed, 18 Oct 2023 06:31:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K144/m-p/1741835#M27917</guid>
      <dc:creator>zq1</dc:creator>
      <dc:date>2023-10-18T06:31:26Z</dc:date>
    </item>
  </channel>
</rss>

