<?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>LPC MicrocontrollersのトピックLPC865 UART0 polling receiver problem.</title>
    <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC865-UART0-polling-receiver-problem/m-p/2087109#M58133</link>
    <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;STRONG&gt;Hi NXP,&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;I'm using the LPC865M201JHI48 microcontroller for UART communication. The transmit function works correctly (I verified this using a serial terminal like PuTTY), but the receive function is not working properly.&lt;/P&gt;&lt;P class=""&gt;&lt;STRONG&gt;What I'm working on:&lt;/STRONG&gt;&lt;BR /&gt;I'm trying to interface the ESP8266 Wi-Fi module with my LPC865M201JHI48 controller. When I send the "AT" command to the Wi-Fi module over UART, I expect to receive an "OK" response from the module. However, instead of receiving "OK", I'm continuously getting the character 'A'.&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;Note:&lt;/STRONG&gt;&lt;BR /&gt;The ESP8266's blue LED is blinking during this process, which indicates that the module is transmitting data (TX activity). This confirms that the ESP8266 is responding, but my microcontroller is not receiving the data correctly.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;pin connection&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;ESP8266 Pin Connect to LPC865&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;VCC&lt;/TD&gt;&lt;TD class=""&gt;3.3V&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;GND&lt;/TD&gt;&lt;TD class=""&gt;GND&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;TX&lt;/TD&gt;&lt;TD class=""&gt;RX of LPC (UART0_RX - PIO0_31)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;RX&lt;/TD&gt;&lt;TD class=""&gt;TX of LPC (UART0_TX - PIO1_9)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;CH_PD (EN)&lt;/TD&gt;&lt;TD class=""&gt;Pull HIGH (3.3V)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;RST&lt;/TD&gt;&lt;TD class=""&gt;Pull HIGH (3.3V)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; response[128];&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;/*void&lt;/SPAN&gt; &lt;SPAN&gt;UART0_SendChar&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; c) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (!(USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;STAT&lt;/SPAN&gt;&lt;SPAN&gt; &amp;amp; (1 &amp;lt;&amp;lt; 2)));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;TXDAT&lt;/SPAN&gt;&lt;SPAN&gt; = c;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;void&lt;/SPAN&gt; &lt;SPAN&gt;UART0_SendString&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;const&lt;/SPAN&gt; &lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; *str) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (*str) UART0_SendChar(*str++);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;void&lt;/SPAN&gt; &lt;SPAN&gt;send_AT&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;const&lt;/SPAN&gt; &lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; *cmd, &lt;/SPAN&gt;&lt;SPAN&gt;uint32_t&lt;/SPAN&gt;&lt;SPAN&gt; delay_time) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;UART0_SendString(cmd);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// UART0_SendString("\r\n");&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(delay_time);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;void&lt;/SPAN&gt; &lt;SPAN&gt;UART0_ReceiveFullResponse&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; *response, &lt;/SPAN&gt;&lt;SPAN&gt;int&lt;/SPAN&gt;&lt;SPAN&gt; max_len)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;int&lt;/SPAN&gt;&lt;SPAN&gt; i = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; c;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;uint32_t&lt;/SPAN&gt;&lt;SPAN&gt; timeout;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;int&lt;/SPAN&gt;&lt;SPAN&gt; newline_count = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (i &amp;lt; (max_len - 1))&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;timeout = 200000;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (!(USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;STAT&lt;/SPAN&gt;&lt;SPAN&gt; &amp;amp; USART_STAT_RXRDY_MASK) &amp;amp;&amp;amp; --timeout);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (timeout == 0) &lt;/SPAN&gt;&lt;SPAN&gt;break&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;c = USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;RXDAT&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;response[i++] = c;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// Optional: Count newlines to wait for complete response&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (c == &lt;/SPAN&gt;&lt;SPAN&gt;'\n'&lt;/SPAN&gt;&lt;SPAN&gt; || c == &lt;/SPAN&gt;&lt;SPAN&gt;'\r'&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;newline_count++;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (newline_count &amp;gt;= 2) &lt;/SPAN&gt;&lt;SPAN&gt;break&lt;/SPAN&gt;&lt;SPAN&gt;; &lt;/SPAN&gt;&lt;SPAN&gt;// Assume full response after 2 line breaks&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;response[i] = &lt;/SPAN&gt;&lt;SPAN&gt;'\0'&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&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;&lt;SPAN&gt;char&lt;/SPAN&gt; &lt;SPAN&gt;LPUART0_receive_char&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;void&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{ &lt;/SPAN&gt;&lt;SPAN&gt;/* Function to Receive single Char */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; receive;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt;((USART0 -&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;STAT&lt;/SPAN&gt;&lt;SPAN&gt; &amp;amp; USART_STAT_RXRDY_MASK)&amp;gt;&amp;gt;USART_STAT_RXRDY_SHIFT==0);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;/* Wait for received buffer to be full */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;receive= USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;RXDAT&lt;/SPAN&gt;&lt;SPAN&gt;; &lt;/SPAN&gt;&lt;SPAN&gt;/* Read received data*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; receive;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// === MAIN ===&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;int&lt;/SPAN&gt; &lt;SPAN&gt;main&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;void&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;usart_config_t&lt;/SPAN&gt;&lt;SPAN&gt; config;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// === &lt;/SPAN&gt;&lt;SPAN&gt;Init&lt;/SPAN&gt;&lt;SPAN&gt; ===&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;BOARD_InitBootPins();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;BOARD_InitBootClocks();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;BOARD_InitBootPeripherals();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;CLOCK_Select(&lt;/SPAN&gt;&lt;SPAN&gt;kUART0_Clk_From_MainClk&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;USART_GetDefaultConfig(&amp;amp;config);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;config.&lt;/SPAN&gt;&lt;SPAN&gt;enableRx&lt;/SPAN&gt;&lt;SPAN&gt; = true;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;config.&lt;/SPAN&gt;&lt;SPAN&gt;enableTx&lt;/SPAN&gt;&lt;SPAN&gt; = true;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;config.&lt;/SPAN&gt;&lt;SPAN&gt;baudRate_Bps&lt;/SPAN&gt;&lt;SPAN&gt; = BOARD_DEBUG_USART_BAUDRATE;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// USART_Init(USART0, &lt;/SPAN&gt;&lt;SPAN&gt;&amp;amp;config&lt;/SPAN&gt;&lt;SPAN&gt;, CLOCK_GetFreq(kCLOCK_MainClk));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;USART_Init(EXAMPLE_USART, &amp;amp;config, EXAMPLE_USART_CLK_FREQ);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(2000);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// &lt;/SPAN&gt;&lt;SPAN&gt;Init&lt;/SPAN&gt;&lt;SPAN&gt; system modules&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;main_init();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;init_key();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;spi_init();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;tft_init();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;//&lt;/SPAN&gt;&lt;SPAN&gt;wifi&lt;/SPAN&gt;&lt;SPAN&gt; pins&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;DIR&lt;/SPAN&gt;&lt;SPAN&gt;[0] |=(1&amp;lt;&amp;lt;24); &lt;/SPAN&gt;&lt;SPAN&gt;// PIO0_24--&amp;gt;Enable&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;DIR&lt;/SPAN&gt;&lt;SPAN&gt;[0] |=(1&amp;lt;&amp;lt;13); &lt;/SPAN&gt;&lt;SPAN&gt;// PIO0_13--&amp;gt;Reset&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;SET&lt;/SPAN&gt;&lt;SPAN&gt;[0] |=(1&amp;lt;&amp;lt;24); &lt;/SPAN&gt;&lt;SPAN&gt;//&lt;/SPAN&gt;&lt;SPAN&gt;En&lt;/SPAN&gt;&lt;SPAN&gt; set&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// To reset ESP8266&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;CLR&lt;/SPAN&gt;&lt;SPAN&gt;[0] |= (1 &amp;lt;&amp;lt; 13); &lt;/SPAN&gt;&lt;SPAN&gt;// Assume PIO0_13 connected to RST&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(100); &lt;/SPAN&gt;&lt;SPAN&gt;// Hold low&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;SET&lt;/SPAN&gt;&lt;SPAN&gt;[0] |= (1 &amp;lt;&amp;lt; 13); &lt;/SPAN&gt;&lt;SPAN&gt;// Pull high again&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;&lt;SPAN&gt;fan_off();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;buzzer_off();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;boot_screen();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;heater_off();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;idel_mode_flag = ON;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;current_mode = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;boot_done_flag = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (1)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;send_AT(&lt;/SPAN&gt;&lt;SPAN&gt;"AT\n\r"&lt;/SPAN&gt;&lt;SPAN&gt;, 1000); &lt;/SPAN&gt;&lt;SPAN&gt;// Send command&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;UART0_ReceiveFullResponse(response, &lt;/SPAN&gt;&lt;SPAN&gt;sizeof&lt;/SPAN&gt;&lt;SPAN&gt;(response));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;displayText12x8(10, 10, response, YELLOW_COLOR, BLACK_COLOR); &lt;/SPAN&gt;&lt;SPAN&gt;// Or print to UART for debugging&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(500);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;display_clr(BLACK_COLOR);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(500);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Baud rate : 115200&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;Could you please help me identify and resolve this issue?&lt;/P&gt;&lt;P class=""&gt;Thank you&lt;/P&gt;</description>
    <pubDate>Fri, 25 Apr 2025 07:09:39 GMT</pubDate>
    <dc:creator>Berlin</dc:creator>
    <dc:date>2025-04-25T07:09:39Z</dc:date>
    <item>
      <title>LPC865 UART0 polling receiver problem.</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC865-UART0-polling-receiver-problem/m-p/2087109#M58133</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P class=""&gt;&lt;STRONG&gt;Hi NXP,&lt;/STRONG&gt;&lt;/P&gt;&lt;P class=""&gt;I'm using the LPC865M201JHI48 microcontroller for UART communication. The transmit function works correctly (I verified this using a serial terminal like PuTTY), but the receive function is not working properly.&lt;/P&gt;&lt;P class=""&gt;&lt;STRONG&gt;What I'm working on:&lt;/STRONG&gt;&lt;BR /&gt;I'm trying to interface the ESP8266 Wi-Fi module with my LPC865M201JHI48 controller. When I send the "AT" command to the Wi-Fi module over UART, I expect to receive an "OK" response from the module. However, instead of receiving "OK", I'm continuously getting the character 'A'.&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&lt;STRONG&gt;Note:&lt;/STRONG&gt;&lt;BR /&gt;The ESP8266's blue LED is blinking during this process, which indicates that the module is transmitting data (TX activity). This confirms that the ESP8266 is responding, but my microcontroller is not receiving the data correctly.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;pin connection&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;ESP8266 Pin Connect to LPC865&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class=""&gt;VCC&lt;/TD&gt;&lt;TD class=""&gt;3.3V&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;GND&lt;/TD&gt;&lt;TD class=""&gt;GND&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;TX&lt;/TD&gt;&lt;TD class=""&gt;RX of LPC (UART0_RX - PIO0_31)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;RX&lt;/TD&gt;&lt;TD class=""&gt;TX of LPC (UART0_TX - PIO1_9)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;CH_PD (EN)&lt;/TD&gt;&lt;TD class=""&gt;Pull HIGH (3.3V)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class=""&gt;RST&lt;/TD&gt;&lt;TD class=""&gt;Pull HIGH (3.3V)&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; response[128];&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;/*void&lt;/SPAN&gt; &lt;SPAN&gt;UART0_SendChar&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; c) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (!(USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;STAT&lt;/SPAN&gt;&lt;SPAN&gt; &amp;amp; (1 &amp;lt;&amp;lt; 2)));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;TXDAT&lt;/SPAN&gt;&lt;SPAN&gt; = c;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;void&lt;/SPAN&gt; &lt;SPAN&gt;UART0_SendString&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;const&lt;/SPAN&gt; &lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; *str) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (*str) UART0_SendChar(*str++);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;void&lt;/SPAN&gt; &lt;SPAN&gt;send_AT&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;const&lt;/SPAN&gt; &lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; *cmd, &lt;/SPAN&gt;&lt;SPAN&gt;uint32_t&lt;/SPAN&gt;&lt;SPAN&gt; delay_time) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;UART0_SendString(cmd);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// UART0_SendString("\r\n");&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(delay_time);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;void&lt;/SPAN&gt; &lt;SPAN&gt;UART0_ReceiveFullResponse&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; *response, &lt;/SPAN&gt;&lt;SPAN&gt;int&lt;/SPAN&gt;&lt;SPAN&gt; max_len)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;int&lt;/SPAN&gt;&lt;SPAN&gt; i = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; c;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;uint32_t&lt;/SPAN&gt;&lt;SPAN&gt; timeout;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;int&lt;/SPAN&gt;&lt;SPAN&gt; newline_count = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (i &amp;lt; (max_len - 1))&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;timeout = 200000;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (!(USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;STAT&lt;/SPAN&gt;&lt;SPAN&gt; &amp;amp; USART_STAT_RXRDY_MASK) &amp;amp;&amp;amp; --timeout);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (timeout == 0) &lt;/SPAN&gt;&lt;SPAN&gt;break&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;c = USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;RXDAT&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;response[i++] = c;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// Optional: Count newlines to wait for complete response&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (c == &lt;/SPAN&gt;&lt;SPAN&gt;'\n'&lt;/SPAN&gt;&lt;SPAN&gt; || c == &lt;/SPAN&gt;&lt;SPAN&gt;'\r'&lt;/SPAN&gt;&lt;SPAN&gt;) {&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;newline_count++;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;if&lt;/SPAN&gt;&lt;SPAN&gt; (newline_count &amp;gt;= 2) &lt;/SPAN&gt;&lt;SPAN&gt;break&lt;/SPAN&gt;&lt;SPAN&gt;; &lt;/SPAN&gt;&lt;SPAN&gt;// Assume full response after 2 line breaks&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;response[i] = &lt;/SPAN&gt;&lt;SPAN&gt;'\0'&lt;/SPAN&gt;&lt;SPAN&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&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;&lt;SPAN&gt;char&lt;/SPAN&gt; &lt;SPAN&gt;LPUART0_receive_char&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;void&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{ &lt;/SPAN&gt;&lt;SPAN&gt;/* Function to Receive single Char */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;char&lt;/SPAN&gt;&lt;SPAN&gt; receive;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt;((USART0 -&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;STAT&lt;/SPAN&gt;&lt;SPAN&gt; &amp;amp; USART_STAT_RXRDY_MASK)&amp;gt;&amp;gt;USART_STAT_RXRDY_SHIFT==0);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;/* Wait for received buffer to be full */&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;receive= USART0-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;RXDAT&lt;/SPAN&gt;&lt;SPAN&gt;; &lt;/SPAN&gt;&lt;SPAN&gt;/* Read received data*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;return&lt;/SPAN&gt;&lt;SPAN&gt; receive;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// === MAIN ===&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;int&lt;/SPAN&gt; &lt;SPAN&gt;main&lt;/SPAN&gt;&lt;SPAN&gt;(&lt;/SPAN&gt;&lt;SPAN&gt;void&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;usart_config_t&lt;/SPAN&gt;&lt;SPAN&gt; config;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// === &lt;/SPAN&gt;&lt;SPAN&gt;Init&lt;/SPAN&gt;&lt;SPAN&gt; ===&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;BOARD_InitBootPins();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;BOARD_InitBootClocks();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;BOARD_InitBootPeripherals();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;CLOCK_Select(&lt;/SPAN&gt;&lt;SPAN&gt;kUART0_Clk_From_MainClk&lt;/SPAN&gt;&lt;SPAN&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;USART_GetDefaultConfig(&amp;amp;config);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;config.&lt;/SPAN&gt;&lt;SPAN&gt;enableRx&lt;/SPAN&gt;&lt;SPAN&gt; = true;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;config.&lt;/SPAN&gt;&lt;SPAN&gt;enableTx&lt;/SPAN&gt;&lt;SPAN&gt; = true;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;config.&lt;/SPAN&gt;&lt;SPAN&gt;baudRate_Bps&lt;/SPAN&gt;&lt;SPAN&gt; = BOARD_DEBUG_USART_BAUDRATE;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// USART_Init(USART0, &lt;/SPAN&gt;&lt;SPAN&gt;&amp;amp;config&lt;/SPAN&gt;&lt;SPAN&gt;, CLOCK_GetFreq(kCLOCK_MainClk));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;USART_Init(EXAMPLE_USART, &amp;amp;config, EXAMPLE_USART_CLK_FREQ);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(2000);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// &lt;/SPAN&gt;&lt;SPAN&gt;Init&lt;/SPAN&gt;&lt;SPAN&gt; system modules&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;main_init();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;init_key();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;spi_init();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;tft_init();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;//&lt;/SPAN&gt;&lt;SPAN&gt;wifi&lt;/SPAN&gt;&lt;SPAN&gt; pins&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;DIR&lt;/SPAN&gt;&lt;SPAN&gt;[0] |=(1&amp;lt;&amp;lt;24); &lt;/SPAN&gt;&lt;SPAN&gt;// PIO0_24--&amp;gt;Enable&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;DIR&lt;/SPAN&gt;&lt;SPAN&gt;[0] |=(1&amp;lt;&amp;lt;13); &lt;/SPAN&gt;&lt;SPAN&gt;// PIO0_13--&amp;gt;Reset&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;SET&lt;/SPAN&gt;&lt;SPAN&gt;[0] |=(1&amp;lt;&amp;lt;24); &lt;/SPAN&gt;&lt;SPAN&gt;//&lt;/SPAN&gt;&lt;SPAN&gt;En&lt;/SPAN&gt;&lt;SPAN&gt; set&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;// To reset ESP8266&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;CLR&lt;/SPAN&gt;&lt;SPAN&gt;[0] |= (1 &amp;lt;&amp;lt; 13); &lt;/SPAN&gt;&lt;SPAN&gt;// Assume PIO0_13 connected to RST&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(100); &lt;/SPAN&gt;&lt;SPAN&gt;// Hold low&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;GPIO-&amp;gt;&lt;/SPAN&gt;&lt;SPAN&gt;SET&lt;/SPAN&gt;&lt;SPAN&gt;[0] |= (1 &amp;lt;&amp;lt; 13); &lt;/SPAN&gt;&lt;SPAN&gt;// Pull high again&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;&lt;SPAN&gt;fan_off();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;buzzer_off();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;boot_screen();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;heater_off();&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;idel_mode_flag = ON;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;current_mode = 0;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;boot_done_flag = 1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;while&lt;/SPAN&gt;&lt;SPAN&gt; (1)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;send_AT(&lt;/SPAN&gt;&lt;SPAN&gt;"AT\n\r"&lt;/SPAN&gt;&lt;SPAN&gt;, 1000); &lt;/SPAN&gt;&lt;SPAN&gt;// Send command&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;UART0_ReceiveFullResponse(response, &lt;/SPAN&gt;&lt;SPAN&gt;sizeof&lt;/SPAN&gt;&lt;SPAN&gt;(response));&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;displayText12x8(10, 10, response, YELLOW_COLOR, BLACK_COLOR); &lt;/SPAN&gt;&lt;SPAN&gt;// Or print to UART for debugging&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(500);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;display_clr(BLACK_COLOR);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;delay_ms(500);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;}*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Baud rate : 115200&lt;/SPAN&gt;&lt;/P&gt;&lt;P class=""&gt;Could you please help me identify and resolve this issue?&lt;/P&gt;&lt;P class=""&gt;Thank you&lt;/P&gt;</description>
      <pubDate>Fri, 25 Apr 2025 07:09:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC865-UART0-polling-receiver-problem/m-p/2087109#M58133</guid>
      <dc:creator>Berlin</dc:creator>
      <dc:date>2025-04-25T07:09:39Z</dc:date>
    </item>
    <item>
      <title>Re: LPC865 UART0 polling receiver problem.</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC865-UART0-polling-receiver-problem/m-p/2088880#M58147</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/249804"&gt;@Berlin&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Based on the information you provided,&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;You configured LPC865 UART for 115200 baud, but is the clock source precise enough? And does the ESP8266 expect exactly 115200?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I think you can capture the transmitted waveform and received waveform under the oscilloscope.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;If the waveform is correct, you can then debug the code logic.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;BR&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Harry&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 29 Apr 2025 03:44:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC865-UART0-polling-receiver-problem/m-p/2088880#M58147</guid>
      <dc:creator>Harry_Zhang</dc:creator>
      <dc:date>2025-04-29T03:44:45Z</dc:date>
    </item>
    <item>
      <title>Re: LPC865 UART0 polling receiver problem.</title>
      <link>https://community.nxp.com/t5/LPC-Microcontrollers/LPC865-UART0-polling-receiver-problem/m-p/2122199#M58411</link>
      <description>&lt;P&gt;Okay… just leave that. In UART polling method, I’m able to send data from the microcontroller to the UART0 terminal, and it works well. However, when I try to receive data, it doesn’t work. Can you give me an example code for receiving data?&lt;/P&gt;</description>
      <pubDate>Tue, 24 Jun 2025 11:25:51 GMT</pubDate>
      <guid>https://community.nxp.com/t5/LPC-Microcontrollers/LPC865-UART0-polling-receiver-problem/m-p/2122199#M58411</guid>
      <dc:creator>Berlin</dc:creator>
      <dc:date>2025-06-24T11:25:51Z</dc:date>
    </item>
  </channel>
</rss>

