I am developing a Interrupt driven UART driver for Coldfire 5208 and
have problems with the flow control.
I have configured the UMR1[RXRTS] so that the my RTS goes
automatically inactive when there is FIFO condition and becomes
automatically active again when a postion in FIFO becomes active
again. I did this because my UART driver receives the packets
correctly with slower polling rate for Modbus RTU communication (my
device act as Master) but with faster polling rate I get FIFO overrun.
I have configured the multiplexed pins to work for UART signals (TXD,
RXD, RTS & CTS) for UART0. As per the receiver functional diagram in
5208 reference manula the RTS signal should be manually made active
the first time and then the function of this signal should be
My problem is my RTS signal never goes active at the first place and
the other (trasmitting) device never gets the CTS signal (even when I
manually make it active (once before I open my UART channer for
receiving) by making UOP1[RTS]=1 )
Have you faced similar problem?
I am also confused which are the valid configurations from the below
UMR1[RXRTS] = 1 UMR2[TXCTS]=1 (Tested with this also)
UMR1[RXRTS] = 1 UMR2[TXCTS]=0 UMR2[TXRTS]=0 (I am currently using this
UMR1[RXRTS] = 0 UMR2[TXCTS]=1 UMR2[TXRTS]=1
UMR1[RXRTS] = 0 UMR2[TXCTS]=1 UMR2[TXRTS]=0
Can anyone suggest the possible causes for such problem?