This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

nrf51822 UART FIFO and stop bits

Hi, I wonder if there is any way to disable the Rx FIFO so that I don't have to fill it to generate an event, since I need exact timing for every incoming byte.

Also, is there anyway to set two stop bits? I can probably workaround it since the second stop bit is high like the IDLE state but it would be nice to do things properly.

Best regards, Andreas

  • Hi,

    The reference manual is explicit that the UART has 1 stop bit. Although if you were to send 2, I don't think it will affect the operation of the UART.

    The UART itself is what transfers the received character from the FIFO to the RXD register. I don't think you can change that behavior. There certainly is no register control that I am aware of that gives you control over that behavior.

    Regards, John

  • You can not disable the FIFO, but you don't have to fill it in order to generate an event. An RXDRDY event will be generated when the first byte is received. If you read this byte immediately a new RXDRDY event will be generated when the next byte is received.

    The UART uses 1 stop bit.

  • Thanks, both of you.

    It would have been great to turn off the FIFO since making sure it is empty takes precious time. But at least knowing how it works is good enough enter code here in this case.

    Best regards, Andreas

Related