<?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: S32K312 UART QUERY</title>
    <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126210#M50435</link>
    <description>&lt;P&gt;The code is attached.&lt;/P&gt;</description>
    <pubDate>Tue, 01 Jul 2025 07:48:17 GMT</pubDate>
    <dc:creator>Neo1096</dc:creator>
    <dc:date>2025-07-01T07:48:17Z</dc:date>
    <item>
      <title>S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126020#M50416</link>
      <description>&lt;P&gt;I need to receive a continuously sent uart data without idle time, with a baud rate of 115200. I consider using DMA and a 250us timer to do this. Each timer interrupts the query to receive a few bytes of data, and then reads the data out and places it in a overwritable circular buffer. (Or send out the read data for testing)&lt;/P&gt;&lt;P&gt;Theoretically, the 250us received data only contains 2 complete bytes. Sending too many bytes to the chip will cause an abnormal number of bytes read.&lt;/P&gt;&lt;P&gt;May I ask if there is a solution to achieve a stable read uart data stream without idle time? Thank you&lt;/P&gt;</description>
      <pubDate>Tue, 01 Jul 2025 04:08:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126020#M50416</guid>
      <dc:creator>Neo1096</dc:creator>
      <dc:date>2025-07-01T04:08:25Z</dc:date>
    </item>
    <item>
      <title>Re: S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126131#M50424</link>
      <description>&lt;P&gt;Hi@&lt;SPAN&gt;Neo1096&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;According to your idea, isn't it just polling through the timer?&lt;/P&gt;
&lt;P&gt;And the LPUART module of S32K312 already has a 4-word deep RX FIFO.&lt;/P&gt;</description>
      <pubDate>Tue, 01 Jul 2025 06:29:20 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126131#M50424</guid>
      <dc:creator>Senlent</dc:creator>
      <dc:date>2025-07-01T06:29:20Z</dc:date>
    </item>
    <item>
      <title>Re: S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126155#M50425</link>
      <description>Yes, but using Lpuart_Uart_Ip_GetReceiveStatus to obtain the data length often leads to data loss. Is there a stable solution? Are there any examples?</description>
      <pubDate>Tue, 01 Jul 2025 06:45:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126155#M50425</guid>
      <dc:creator>Neo1096</dc:creator>
      <dc:date>2025-07-01T06:45:29Z</dc:date>
    </item>
    <item>
      <title>Re: S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126163#M50428</link>
      <description>&lt;P&gt;Hi@&lt;SPAN&gt;Neo1096&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;"&lt;SPAN&gt;Yes, but using Lpuart_Uart_Ip_GetReceiveStatus to obtain the data length often leads to data loss&lt;/SPAN&gt;"&lt;/P&gt;
&lt;P&gt;Please provide your test method and test project, and I will help you check the possible causes of the problem.&lt;/P&gt;</description>
      <pubDate>Tue, 01 Jul 2025 06:51:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126163#M50428</guid>
      <dc:creator>Senlent</dc:creator>
      <dc:date>2025-07-01T06:51:59Z</dc:date>
    </item>
    <item>
      <title>Re: S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126207#M50434</link>
      <description>&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Neo1096_1-1751354634788.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/345418i56FAB27318A69C40/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Neo1096_1-1751354634788.png" alt="Neo1096_1-1751354634788.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Neo1096_2-1751355756632.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/345424iFAF2BAA5551491F2/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Neo1096_2-1751355756632.png" alt="Neo1096_2-1751355756632.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;In the array, five numbers were received, but the baud rate is 115200 and the timer is 250us. Theoretically, only two complete bytes can be received, so the remainingBytes is 28. I will lose the last three data.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If the data sent at one time exceeds the preset array range and there is no time to update it, one piece of data will be lost. For example, in the figure, if 1 to 32 is sent, only 30 can be received, and Rx_Buffer[0] cannot be updated to 31&lt;/P&gt;</description>
      <pubDate>Tue, 01 Jul 2025 07:45:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126207#M50434</guid>
      <dc:creator>Neo1096</dc:creator>
      <dc:date>2025-07-01T07:45:25Z</dc:date>
    </item>
    <item>
      <title>Re: S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126210#M50435</link>
      <description>&lt;P&gt;The code is attached.&lt;/P&gt;</description>
      <pubDate>Tue, 01 Jul 2025 07:48:17 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126210#M50435</guid>
      <dc:creator>Neo1096</dc:creator>
      <dc:date>2025-07-01T07:48:17Z</dc:date>
    </item>
    <item>
      <title>Re: S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126807#M50461</link>
      <description>&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Neo1096_1-1751425096743.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/345580i7E3F2EA5BFD8B6E2/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Neo1096_1-1751425096743.png" alt="Neo1096_1-1751425096743.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;How to configure the polling mode? Are there any routines that directly read data from the FIFO?&lt;/P&gt;</description>
      <pubDate>Wed, 02 Jul 2025 03:36:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126807#M50461</guid>
      <dc:creator>Neo1096</dc:creator>
      <dc:date>2025-07-02T03:36:41Z</dc:date>
    </item>
    <item>
      <title>Re: S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126858#M50466</link>
      <description>&lt;P&gt;Hi@&lt;SPAN&gt;Neo1096&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;1.polling&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Senlent_0-1751434689874.png" style="width: 645px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/345601iBC223DAA7DE40B5D/image-dimensions/645x107?v=v2" width="645" height="107" role="button" title="Senlent_0-1751434689874.png" alt="Senlent_0-1751434689874.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;2. Or&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Senlent_1-1751434761217.png" style="width: 581px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/345602i61C335738B199142/image-dimensions/581x157?v=v2" width="581" height="157" role="button" title="Senlent_1-1751434761217.png" alt="Senlent_1-1751434761217.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;"&lt;/P&gt;
&lt;P&gt;Lpuart_Uart_Ip_AsyncReceive（）&lt;BR /&gt;while(Lpuart_Uart_Ip_GetReceiveStatus（）==........)&lt;/P&gt;
&lt;P&gt;"&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;3.Enable Interrupt&lt;/P&gt;
&lt;P&gt;step1:Lpuart_Uart_Ip_AsyncReceive(0, Rx_Buffer, 1);//start receiver 1 byte&lt;/P&gt;
&lt;P&gt;step2:In Uart interrupt handler&lt;/P&gt;
&lt;DIV&gt;&lt;LI-CODE lang="c"&gt;void Uart0_Callback(const uint8 HwInstance, const Lpuart_Uart_Ip_EventType Event, void *UserData)
{
	if(Event == LPUART_UART_IP_EVENT_RX_FULL)
	{
		Rx_BuffIndex++;
		if(Rx_BuffIndex &amp;gt;= Max_Rx_length)
		{
			Rx_BuffIndex = 0;
		}
		Lpuart_Uart_Ip_SetRxBuffer(0, &amp;amp;Rx_Buffer[Rx_BuffIndex], 1U);//start receive process again
	}

}&lt;/LI-CODE&gt;&lt;/DIV&gt;
&lt;P&gt;"&lt;/P&gt;
&lt;P&gt;4.DMA+Idle,&lt;/P&gt;
&lt;P&gt;This has been demonstrated in the previous answer.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The above are the four methods that can be thought of at present. As for how you want to process the received buffer data, this is an application problem and you need to find a way to solve it yourself.&lt;/P&gt;</description>
      <pubDate>Wed, 02 Jul 2025 05:46:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126858#M50466</guid>
      <dc:creator>Senlent</dc:creator>
      <dc:date>2025-07-02T05:46:25Z</dc:date>
    </item>
    <item>
      <title>Re: S32K312 UART QUERY</title>
      <link>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126999#M50475</link>
      <description>&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Neo1096_0-1751442802452.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/345637iAFB313C37F3E2177/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Neo1096_0-1751442802452.png" alt="Neo1096_0-1751442802452.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;I sent 10 0As. The first one failed to receive, while the following 9 variables were correct. What could be the reason for this?&lt;/P&gt;&lt;P&gt;How do I know how many variables I have received in the timer interrupt?&lt;/P&gt;&lt;P&gt;The timer interrupt is 7500/30,000000 = 250us, and the baud rate is 115200. Shouldn't it only receive 2 bytes?&lt;/P&gt;</description>
      <pubDate>Wed, 02 Jul 2025 07:58:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K312-UART-QUERY/m-p/2126999#M50475</guid>
      <dc:creator>Neo1096</dc:creator>
      <dc:date>2025-07-02T07:58:41Z</dc:date>
    </item>
  </channel>
</rss>

