This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Printing data from UART

Other Parts Discussed in Thread: CC2530

Hi,

I am using Smartrf 05 Evaluation Board Rev 1.8.1 with cc2530 chip attached.

I want to modify SampleHeatingCoolingUnit code to display data from Uart. So when i send something from Uart (RealTerm program) i want to display that on LCD display.

static uint16 HalUARTReadDMA(uint8 *buf, uint16 len)
{
  uint16 cnt;
  for (cnt = 0; cnt < len; cnt++)
  {
    if (!HAL_UART_DMA_NEW_RX_BYTE(dmaCfg.rxHead))
    {
      break;
    }
    *buf++ = HAL_UART_DMA_GET_RX_BYTE(dmaCfg.rxHead);
    HAL_UART_DMA_CLR_RX_BYTE(dmaCfg.rxHead);
#if HAL_UART_DMA_RX_MAX == 256
    (dmaCfg.rxHead)++;
#else
    if (++(dmaCfg.rxHead) >= HAL_UART_DMA_RX_MAX)
    {
      dmaCfg.rxHead = 0;
    }
#endif
    char str[10];
    sprintf(str,"UART: %d",(uint32)dmaCfg.rxBuf[0]);
    HalLcdWriteString(str,HAL_LCD_LINE_1);
    HalLcdWriteValue( (uint32)dmaCfg.rxHead, 10, HAL_LCD_LINE_2);
    HalLcdWriteValue( (uint32)buf, 10, HAL_LCD_LINE_3 );
  }
  PxOUT &= ~HAL_UART_Px_RTS;  // Re-enable the flow on any read.
 
 
  return cnt;
}

Whenever i tried do display values i got buffer size and amount of data that i sent, never exact string that i send.

I am stuck now, dont know what to do, can someone pls help me?