<?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 UART SDK Problem in Kinetis Software Development Kit</title>
    <link>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/UART-SDK-Problem/m-p/488031#M4328</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;KDS V3.0.0&lt;/P&gt;&lt;P&gt;KSDK V1.3.0&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am able to get the Debug Console UART routines to work just fine. However, when using the UART Peripheral Drivers (UART_DRV_*) to work, I am unable to get these routines to work properly. In the example below, I am getting only the first letter of the string buffStart to display in an infinite loop on the receiving RS232 port.&amp;nbsp; As you can see below, I have tried this blocking and non-blocking, to no avail.&amp;nbsp; I am using the GPIO LEDs as debugging features so please ignore these.&amp;nbsp; Any ideas what is happening here with the UART?&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;int main(void)&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;/*lint -restore Enable MISRA rule (6.3) checking. */&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;{&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; /* Write your local variable definition here */&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; uint8_t buffStart[]&amp;nbsp;&amp;nbsp; = "++++++++++++++++ UART Send/Receive Non Blocking Example +++++++++++++++++\r\n";&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; uint8_t bufferData1[] = "\r\nType characters from keyboard, the board will receive and then echo them to terminal screen\r\n";&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; uint8_t byteCountBuff, txChar, rxChar;&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; /*** Processor Expert internal initialization. DON'T REMOVE THIS CODE!!! ***/&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; PE_low_level_init();&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; /*** End of Processor Expert internal initialization.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ***/&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; /* Write your code here */&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_Init(gpio1_InpConfig0, gpio1_OutConfig0); // Initialize GPIO&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_RED, ON); // Set LED to RED while program loads&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; UART_DRV_Init(UART0_IDX, &amp;amp;uartCom0_State, &amp;amp;uartCom0_InitConfig0);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; // Inform to start non blocking example&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; byteCountBuff = sizeof(buffStart);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; UART_DRV_SendDataBlocking(UART0_IDX, buffStart, byteCountBuff, 1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; //UART_DRV_SendData(UART0_IDX, "Hello", 5);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_RED, OFF);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_GREEN, ON);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; // Wait until transmission is finished&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; //while (kStatus_UART_TxBusy == UART_DRV_GetTransmitStatus(UART0_IDX, NULL)){}&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_GREEN, OFF);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_BLUE, ON);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; // Inform user of what to do&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; byteCountBuff = sizeof(bufferData1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; UART_DRV_SendDataBlocking(UART0_IDX, bufferData1, byteCountBuff, 1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_RED, ON);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; // Wait until transmission is finished&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; //while (kStatus_UART_TxBusy == UART_DRV_GetTransmitStatus(UART0_IDX, NULL)){}&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_GREEN, ON);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; for(;;)&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; {&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Call received API&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART_DRV_ReceiveDataBlocking(UART0_IDX, &amp;amp;rxChar, 1u, 1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Wait until we receive a character&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //while (kStatus_UART_RxBusy == UART_DRV_GetReceiveStatus(UART0_IDX, NULL)){}&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Echo received character&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; txChar = rxChar;&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART_DRV_SendDataBlocking(UART0_IDX, &amp;amp;txChar, 1u, 1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; };&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 16 Dec 2015 19:20:58 GMT</pubDate>
    <dc:creator>philhale</dc:creator>
    <dc:date>2015-12-16T19:20:58Z</dc:date>
    <item>
      <title>UART SDK Problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/UART-SDK-Problem/m-p/488031#M4328</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;KDS V3.0.0&lt;/P&gt;&lt;P&gt;KSDK V1.3.0&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I am able to get the Debug Console UART routines to work just fine. However, when using the UART Peripheral Drivers (UART_DRV_*) to work, I am unable to get these routines to work properly. In the example below, I am getting only the first letter of the string buffStart to display in an infinite loop on the receiving RS232 port.&amp;nbsp; As you can see below, I have tried this blocking and non-blocking, to no avail.&amp;nbsp; I am using the GPIO LEDs as debugging features so please ignore these.&amp;nbsp; Any ideas what is happening here with the UART?&lt;/P&gt;&lt;P style="min-height: 8pt; padding: 0px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;int main(void)&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;/*lint -restore Enable MISRA rule (6.3) checking. */&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;{&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; /* Write your local variable definition here */&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; uint8_t buffStart[]&amp;nbsp;&amp;nbsp; = "++++++++++++++++ UART Send/Receive Non Blocking Example +++++++++++++++++\r\n";&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; uint8_t bufferData1[] = "\r\nType characters from keyboard, the board will receive and then echo them to terminal screen\r\n";&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; uint8_t byteCountBuff, txChar, rxChar;&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; /*** Processor Expert internal initialization. DON'T REMOVE THIS CODE!!! ***/&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; PE_low_level_init();&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; /*** End of Processor Expert internal initialization.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ***/&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; /* Write your code here */&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_Init(gpio1_InpConfig0, gpio1_OutConfig0); // Initialize GPIO&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_RED, ON); // Set LED to RED while program loads&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; UART_DRV_Init(UART0_IDX, &amp;amp;uartCom0_State, &amp;amp;uartCom0_InitConfig0);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; // Inform to start non blocking example&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; byteCountBuff = sizeof(buffStart);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; UART_DRV_SendDataBlocking(UART0_IDX, buffStart, byteCountBuff, 1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; //UART_DRV_SendData(UART0_IDX, "Hello", 5);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_RED, OFF);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_GREEN, ON);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; // Wait until transmission is finished&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; //while (kStatus_UART_TxBusy == UART_DRV_GetTransmitStatus(UART0_IDX, NULL)){}&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_GREEN, OFF);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_BLUE, ON);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; // Inform user of what to do&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; byteCountBuff = sizeof(bufferData1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; UART_DRV_SendDataBlocking(UART0_IDX, bufferData1, byteCountBuff, 1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_RED, ON);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; // Wait until transmission is finished&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; //while (kStatus_UART_TxBusy == UART_DRV_GetTransmitStatus(UART0_IDX, NULL)){}&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; GPIO_DRV_WritePinOutput(LED_GREEN, ON);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; for(;;)&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; {&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Call received API&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART_DRV_ReceiveDataBlocking(UART0_IDX, &amp;amp;rxChar, 1u, 1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Wait until we receive a character&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //while (kStatus_UART_RxBusy == UART_DRV_GetReceiveStatus(UART0_IDX, NULL)){}&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="min-height: 8pt; padding: 0px; padding-left: 30px;"&gt;&amp;nbsp;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // Echo received character&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; txChar = rxChar;&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UART_DRV_SendDataBlocking(UART0_IDX, &amp;amp;txChar, 1u, 1);&lt;/STRONG&gt;&lt;/P&gt;&lt;P dir="ltr" style="padding-left: 30px;"&gt;&lt;STRONG style="font-size: 10pt;"&gt;&amp;nbsp; };&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 16 Dec 2015 19:20:58 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/UART-SDK-Problem/m-p/488031#M4328</guid>
      <dc:creator>philhale</dc:creator>
      <dc:date>2015-12-16T19:20:58Z</dc:date>
    </item>
    <item>
      <title>Re: UART SDK Problem</title>
      <link>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/UART-SDK-Problem/m-p/488032#M4329</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I wasn't able to get the routines to work until I declared a RX buffer and modified the fsl_uart_driver.c routine as defined in the link below.&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" href="https://community.nxp.com/message/599730?et=watches.email.thread#599730" title="https://community.freescale.com/message/599730?et=watches.email.thread#599730"&gt;https://community.freescale.com/message/599730?et=watches.email.thread#599730&lt;/A&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 28 Dec 2015 17:40:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/Kinetis-Software-Development-Kit/UART-SDK-Problem/m-p/488032#M4329</guid>
      <dc:creator>philhale</dc:creator>
      <dc:date>2015-12-28T17:40:49Z</dc:date>
    </item>
  </channel>
</rss>

