<?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: USART interrupt on LPC55S69 Board not receiving more than 17 bytes in LPC Microcontrollers</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2093073#M58171</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/186731"&gt;@EdwinHz&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;Thanks for your response.&lt;/P&gt;&lt;P&gt;I already tried example code between two USART and even tested loop back mode.&lt;/P&gt;&lt;P&gt;But in my application the data is sent by another device to LPC55S69.&lt;/P&gt;&lt;P&gt;I also saw an explanation in this thread, but still I am seeing the issue.&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board/td-p/1848624" target="_blank"&gt;https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board/td-p/1848624&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;BR /&gt;San&lt;/P&gt;</description>
    <pubDate>Wed, 07 May 2025 18:58:26 GMT</pubDate>
    <dc:creator>sushmasan</dc:creator>
    <dc:date>2025-05-07T18:58:26Z</dc:date>
    <item>
      <title>USART interrupt on LPC55S69 Board not receiving more than 17 bytes</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2092951#M58168</link>
      <description>&lt;P&gt;Hello Team,&lt;/P&gt;&lt;P&gt;I tried different possibilities, but in the USART interrupt handler I am able to receive only receive only 17bytes.&lt;/P&gt;&lt;P&gt;This is my interrupt handler code, please let me know if I am missing anything,&lt;/P&gt;&lt;LI-CODE lang="c"&gt;#define BUFF_SIZE 256
uint8_t rx_buffer[BUFF_SIZE];

void Test_USART2_IRQHandler(void)
{
    uint8_t data;
    while ((0x1F&amp;lt;&amp;lt;USART_FIFOSTAT_RXLVL_SHIFT) &amp;amp; (USART_IF2-&amp;gt;FIFOSTAT))
    {
       data = USART_ReadByte(USART_IF2);
       if (((rxHeadIndex + 1) % BUFFER_SIZE) != rxTailIndex)
       {
           rxBuffer[rxHeadIndex] = data;
           rxHeadIndex++;
           rxHeadIndex %= BUFFER_SIZE;
       }
    }
    USART_DisableInterrupts( USART_IF2, kUSART_RxLevelInterruptEnable | kUSART_RxErrorInterruptEnable );

    SDK_ISR_EXIT_BARRIER;
}

// Processing the received data in another task, and enabling interrupts after copying the complete data.&lt;/LI-CODE&gt;&lt;P&gt;With this I am receiving this data,&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;Received -&amp;gt; 1
Received -&amp;gt; 2
Received -&amp;gt; 3
Received -&amp;gt; 4
Received -&amp;gt; 5
Received -&amp;gt; 6
Received -&amp;gt; 7
Received -&amp;gt; 8
Received -&amp;gt; 9
Received -&amp;gt; 10
Received -&amp;gt; 11
Received -&amp;gt; 12
Received -&amp;gt; 13
Received -&amp;gt; 14
Received -&amp;gt; 15
Received -&amp;gt; 16
Received -&amp;gt; 17&lt;/LI-CODE&gt;&lt;P&gt;In the same interrupt handler code, If I include these lines, after USART_ReadByte,&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;LI-CODE lang="c"&gt;// Check for the RX FIFO Overflow error and if exist, clear that error
if ((USART_IF2-&amp;gt;FIFOSTAT &amp;amp; USART_FIFOSTAT_RXERR_MASK))
 {
    PRINTF("RX FIFO Overflow error, so clearing it\r\n");
    USART_IF2-&amp;gt;FIFOSTAT |= USART_FIFOSTAT_RXERR_MASK;
 }&lt;/LI-CODE&gt;&lt;P&gt;I am receiving this data,&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;Received -&amp;gt; 1
RX FIFO Overflow error, so clearing it
Received -&amp;gt; 2
Received -&amp;gt; 3
Received -&amp;gt; 4
Received -&amp;gt; 5
Received -&amp;gt; 6
Received -&amp;gt; 7
Received -&amp;gt; 8
Received -&amp;gt; 9
Received -&amp;gt; 10
Received -&amp;gt; 11
Received -&amp;gt; 12
Received -&amp;gt; 13
Received -&amp;gt; 14
Received -&amp;gt; 15
Received -&amp;gt; 16
Received -&amp;gt; 17&lt;/LI-CODE&gt;&lt;P&gt;But the other device is sending 30bytes to LPC55S69.&lt;/P&gt;&lt;P&gt;Can you please let me know, where the other bytes lost and why those are not received fully?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;San&lt;/P&gt;</description>
      <pubDate>Wed, 07 May 2025 16:30:59 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2092951#M58168</guid>
      <dc:creator>sushmasan</dc:creator>
      <dc:date>2025-05-07T16:30:59Z</dc:date>
    </item>
    <item>
      <title>Re: USART interrupt on LPC55S69 Board not receiving more than 17 bytes</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2093051#M58169</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/221349"&gt;@sushmasan&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;Please take a look at our USART example codes from the LPCXpresso55s69 SDK as these example codes will prove useful for your issue. You can download the SDK on the following link:&amp;nbsp;&lt;A href="https://mcuxpresso.nxp.com/en/select" target="_blank"&gt;Select Board | MCUXpresso SDK Builder&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;BR,&lt;BR /&gt;Edwin.&lt;/P&gt;</description>
      <pubDate>Wed, 07 May 2025 18:10:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2093051#M58169</guid>
      <dc:creator>EdwinHz</dc:creator>
      <dc:date>2025-05-07T18:10:25Z</dc:date>
    </item>
    <item>
      <title>Re: USART interrupt on LPC55S69 Board not receiving more than 17 bytes</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2093073#M58171</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/186731"&gt;@EdwinHz&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;Thanks for your response.&lt;/P&gt;&lt;P&gt;I already tried example code between two USART and even tested loop back mode.&lt;/P&gt;&lt;P&gt;But in my application the data is sent by another device to LPC55S69.&lt;/P&gt;&lt;P&gt;I also saw an explanation in this thread, but still I am seeing the issue.&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board/td-p/1848624" target="_blank"&gt;https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board/td-p/1848624&lt;/A&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;BR /&gt;San&lt;/P&gt;</description>
      <pubDate>Wed, 07 May 2025 18:58:26 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2093073#M58171</guid>
      <dc:creator>sushmasan</dc:creator>
      <dc:date>2025-05-07T18:58:26Z</dc:date>
    </item>
    <item>
      <title>Re: USART interrupt on LPC55S69 Board not receiving more than 17 bytes</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2097501#M58189</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/221349"&gt;@sushmasan&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;As you can see in section "34.6.10 FIFO Configuration register" of the "LPC55S6x/LPC55S2x/LPC552x User manual"&amp;nbsp;(UM11126), the USART FIFO size is forcefully configured&amp;nbsp;as 16 entries of 8 bits.&lt;/P&gt;
&lt;P&gt;This is why you are only receiving 16 entries (1 through 17).&lt;/P&gt;
&lt;P&gt;As mentioned on the following community post, you need to clear the FIFO in order to receive more than 16 bytes:&amp;nbsp;&lt;A href="https://community.nxp.com/t5/LPC-Microcontrollers/Receiving-Moren-Than-16-Data-via-USART/m-p/1134446/highlight/true#M42132" target="_blank"&gt;Re: Receiving Moren Than 16 Data via USART - NXP Community&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;BR,&lt;BR /&gt;Edwin.&lt;/P&gt;</description>
      <pubDate>Wed, 14 May 2025 19:09:23 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2097501#M58189</guid>
      <dc:creator>EdwinHz</dc:creator>
      <dc:date>2025-05-14T19:09:23Z</dc:date>
    </item>
    <item>
      <title>Re: USART interrupt on LPC55S69 Board not receiving more than 17 bytes</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2098192#M58196</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/186731"&gt;@EdwinHz&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;Thanks for your response.&lt;/P&gt;&lt;P&gt;I am not doing it correctly to clear the RX fifo overflow. Also&amp;nbsp;I found another cause, as I am using a debug message inside the interrupt handler that is causing the issue.&lt;/P&gt;&lt;P&gt;Now everything is working fine.&lt;/P&gt;&lt;P&gt;Regards,&lt;BR /&gt;San&lt;/P&gt;</description>
      <pubDate>Thu, 15 May 2025 13:55:27 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/USART-interrupt-on-LPC55S69-Board-not-receiving-more-than-17/m-p/2098192#M58196</guid>
      <dc:creator>sushmasan</dc:creator>
      <dc:date>2025-05-15T13:55:27Z</dc:date>
    </item>
  </channel>
</rss>

