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.

LM3S3739: UART Receive Functionality

Part Number: LM3S3739

We are using receive interrupt, for receiving packet details, but it works with only FIFOLevelSet.

We need receive interrupt trigger for single byte, 

We checked with UARTFIFO disable option also, but receive interrupt is occurring for 8 bytes, not occurring for single byte.

how to handle please suggest me.

Currently we are using the below  setting for UART Receive

UARTHandler()

ulStatus=UARTIntStatus(UART2_BASE,1);
UARTIntClear(UART2_BASE,ulStatus);

while(UARTCharsAvail(UART2_BASE))
{
rs485.rx_buffer[rs485.rx_count]=UARTCharGet(UART2_BASE);
rs485.rx_count++;
}

FIFOLevel setting

UARTFIFOLevelSet(UART2_BASE,UART_FIFO_TX1_8,UART_FIFO_RX1_8);

With the above settings, we are receiving the interrupt for every 2 bytes.

We need to receive interrupt for every 1 byte.

  • Hi,

      First of all, please note that this device is listed as NRND (Not Recommended for New Design) in the TI product page. If you are designing a new systems, please consider the replacement devices such as TM4C123 or TM4C129 MCU. 

      With that said, how did disable the FIFO? Can you please check if FEN bit in the UARTLCRH register is clear not not. When the FEN bit is clear, the FIFO disabled.