<?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 Re: I cann't receive CAN frame via RX FIFO in S32K</title>
    <link>https://community.nxp.com/t5/S32K/I-cann-t-receive-CAN-frame-via-RX-FIFO/m-p/1153785#M8171</link>
    <description>&lt;P&gt;Dear&amp;nbsp;&lt;SPAN class=""&gt;&lt;A href="https://community.nxp.com/t5/user/viewprofilepage/user-id/52961" target="_self"&gt;Petr&lt;/A&gt;S:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;Thanks for your suggestion. Although i download the V2.2 S32DS IDE with RTM 3.0.0 SDK, my project still don't work. There might be some key points about how to use SDK functions that i haven't understand. So i write a ReceiveFifo function referring to the datasheet by myself. Lucky, it works. My function is attached below. Still, thanks again!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;void ReceiveFifo(uint32_t *RxID,uint8_t *RxData)&lt;BR /&gt;{&lt;BR /&gt;uint32_t Word1,Word2;&lt;BR /&gt;&lt;BR /&gt;RxCODE= (CAN0-&amp;gt;RAMn[0] &amp;amp; 0x00300000) &amp;gt;&amp;gt; 20; /* Read CODE field */&lt;BR /&gt;*RxID = (CAN0-&amp;gt;RAMn[1] &amp;amp; CAN_WMBn_ID_ID_MASK) &amp;gt;&amp;gt; CAN_WMBn_ID_ID_SHIFT; /* Read ID */&lt;BR /&gt;Word1 = CAN0-&amp;gt;RAMn[2]; /* Read data field */&lt;BR /&gt;Word2 = CAN0-&amp;gt;RAMn[3];&lt;BR /&gt;RxData[0] = (Word1 &amp;amp; 0xFF000000) &amp;gt;&amp;gt;24;&lt;BR /&gt;RxData[1] = (Word1 &amp;amp; 0x00FF0000) &amp;gt;&amp;gt;16;&lt;BR /&gt;RxData[2] = (Word1 &amp;amp; 0x0000FF00) &amp;gt;&amp;gt;8;&lt;BR /&gt;RxData[3] = (Word1 &amp;amp; 0x000000FF) &amp;gt;&amp;gt;0;&lt;BR /&gt;RxData[4] = (Word2 &amp;amp; 0xFF000000) &amp;gt;&amp;gt;24;&lt;BR /&gt;RxData[5] = (Word2 &amp;amp; 0x00FF0000) &amp;gt;&amp;gt;16;&lt;BR /&gt;RxData[6] = (Word2 &amp;amp; 0x0000FF00) &amp;gt;&amp;gt;8;&lt;BR /&gt;RxData[7] = (Word2 &amp;amp; 0x000000FF) &amp;gt;&amp;gt;0;&lt;BR /&gt;RxIDHIT = CAN0-&amp;gt;RXFIR; /* Read RXFIR */&lt;BR /&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 16 Sep 2020 02:49:31 GMT</pubDate>
    <dc:creator>Yanncy</dc:creator>
    <dc:date>2020-09-16T02:49:31Z</dc:date>
    <item>
      <title>I cann't receive CAN frame via RX FIFO</title>
      <link>https://community.nxp.com/t5/S32K/I-cann-t-receive-CAN-frame-via-RX-FIFO/m-p/1152555#M8134</link>
      <description>&lt;P&gt;hello:&lt;/P&gt;&lt;P&gt;I'm using s32k144 EVB board to test CAN module. The function i want to realize is receiving one CAN message from computer and then sending this message to computer via interrupt.&lt;/P&gt;&lt;P&gt;I configure CAN0 with RX FIFO mode and enable the corresponding interrupt. I can send a default CAN message at the start of the program. I also see the blue light twinkling as a flag of CAN module receiving normally while i don't read that CAN message. However, I can't read this CAN message to a message variable. When i use the function&amp;nbsp;FLEXCAN_DRV_RxFifo in the interrupt, it only send back a default CAN message for the first time and then have no reaction for next CAN message.&amp;nbsp;&lt;/P&gt;&lt;P&gt;The interrupt i enable is&amp;nbsp;CAN0_ORed_0_15_MB_IRQn, and the interrupt handler is shown below:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="捕获.PNG" style="width: 999px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/125021iC6A1262D65E7FEBB/image-size/large?v=v2&amp;amp;px=999" role="button" title="捕获.PNG" alt="捕获.PNG" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Besides, i use S32DS_ARM_v2018.R1&amp;nbsp; as IDE and EAR SDK v0.8.6 for assistance.&lt;/P&gt;</description>
      <pubDate>Mon, 14 Sep 2020 02:53:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/I-cann-t-receive-CAN-frame-via-RX-FIFO/m-p/1152555#M8134</guid>
      <dc:creator>Yanncy</dc:creator>
      <dc:date>2020-09-14T02:53:45Z</dc:date>
    </item>
    <item>
      <title>Re: I cann't receive CAN frame via RX FIFO</title>
      <link>https://community.nxp.com/t5/S32K/I-cann-t-receive-CAN-frame-via-RX-FIFO/m-p/1152838#M8141</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I can suggest to use newer SDK version, now RTM 3.0.3. Try to update SDK from the S32DS you have.&lt;/P&gt;&lt;P&gt;Or install S32DS v 2.2;&amp;nbsp;&lt;A href="https://community.nxp.com/t5/S32-Design-Studio-Knowledge-Base/S32-Design-Studio-for-ARM-2-2-Windows-Linux-released/ta-p/1122389" target="_blank"&gt;https://community.nxp.com/t5/S32-Design-Studio-Knowledge-Base/S32-Design-Studio-for-ARM-2-2-Windows-Linux-released/ta-p/1122389&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Some example with RXFIFO usage can be found in&amp;nbsp;&lt;A href="https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K144-FlexCAN-RXFIFO-DMA-S32DS-ARM-2018-R1/ta-p/1120014" target="_blank"&gt;https://community.nxp.com/t5/S32K-Knowledge-Base/Example-S32K144-FlexCAN-RXFIFO-DMA-S32DS-ARM-2018-R1/ta-p/1120014&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;BR, Petr&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 14 Sep 2020 10:09:48 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/I-cann-t-receive-CAN-frame-via-RX-FIFO/m-p/1152838#M8141</guid>
      <dc:creator>PetrS</dc:creator>
      <dc:date>2020-09-14T10:09:48Z</dc:date>
    </item>
    <item>
      <title>Re: I cann't receive CAN frame via RX FIFO</title>
      <link>https://community.nxp.com/t5/S32K/I-cann-t-receive-CAN-frame-via-RX-FIFO/m-p/1153785#M8171</link>
      <description>&lt;P&gt;Dear&amp;nbsp;&lt;SPAN class=""&gt;&lt;A href="https://community.nxp.com/t5/user/viewprofilepage/user-id/52961" target="_self"&gt;Petr&lt;/A&gt;S:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;Thanks for your suggestion. Although i download the V2.2 S32DS IDE with RTM 3.0.0 SDK, my project still don't work. There might be some key points about how to use SDK functions that i haven't understand. So i write a ReceiveFifo function referring to the datasheet by myself. Lucky, it works. My function is attached below. Still, thanks again!&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class=""&gt;void ReceiveFifo(uint32_t *RxID,uint8_t *RxData)&lt;BR /&gt;{&lt;BR /&gt;uint32_t Word1,Word2;&lt;BR /&gt;&lt;BR /&gt;RxCODE= (CAN0-&amp;gt;RAMn[0] &amp;amp; 0x00300000) &amp;gt;&amp;gt; 20; /* Read CODE field */&lt;BR /&gt;*RxID = (CAN0-&amp;gt;RAMn[1] &amp;amp; CAN_WMBn_ID_ID_MASK) &amp;gt;&amp;gt; CAN_WMBn_ID_ID_SHIFT; /* Read ID */&lt;BR /&gt;Word1 = CAN0-&amp;gt;RAMn[2]; /* Read data field */&lt;BR /&gt;Word2 = CAN0-&amp;gt;RAMn[3];&lt;BR /&gt;RxData[0] = (Word1 &amp;amp; 0xFF000000) &amp;gt;&amp;gt;24;&lt;BR /&gt;RxData[1] = (Word1 &amp;amp; 0x00FF0000) &amp;gt;&amp;gt;16;&lt;BR /&gt;RxData[2] = (Word1 &amp;amp; 0x0000FF00) &amp;gt;&amp;gt;8;&lt;BR /&gt;RxData[3] = (Word1 &amp;amp; 0x000000FF) &amp;gt;&amp;gt;0;&lt;BR /&gt;RxData[4] = (Word2 &amp;amp; 0xFF000000) &amp;gt;&amp;gt;24;&lt;BR /&gt;RxData[5] = (Word2 &amp;amp; 0x00FF0000) &amp;gt;&amp;gt;16;&lt;BR /&gt;RxData[6] = (Word2 &amp;amp; 0x0000FF00) &amp;gt;&amp;gt;8;&lt;BR /&gt;RxData[7] = (Word2 &amp;amp; 0x000000FF) &amp;gt;&amp;gt;0;&lt;BR /&gt;RxIDHIT = CAN0-&amp;gt;RXFIR; /* Read RXFIR */&lt;BR /&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 16 Sep 2020 02:49:31 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/I-cann-t-receive-CAN-frame-via-RX-FIFO/m-p/1153785#M8171</guid>
      <dc:creator>Yanncy</dc:creator>
      <dc:date>2020-09-16T02:49:31Z</dc:date>
    </item>
  </channel>
</rss>

