Yahoo Groups archive

Lpc2000

Index last updated: 2026-04-28 23:31 UTC

Thread

Uart FIFOs being disabled

Uart FIFOs being disabled

2004-11-19 by peterburdine

Has anyone had experience with their UART fifos being randomly
disabled?  For some reason, my UART0 fifo is being diabled seemingly
randomly.  The application itself is not that complex, it receives a 2
byte command and sends back 10 bytes of status.  Somehow, the fifos
get disabled, then a CTI interrupt occurs that I cannot get rid of. 
In the manual it says to clear CTI I need to read RSR.  I don't see an
RSR register, but I would assume that they meant RBR.

Any suggestions?

Thanks,
Peter

Re: Uart FIFOs being disabled

2004-11-20 by emerg_reanimator

--- In lpc2000@yahoogroups.com, "peterburdine" <lordofdawn@h...>
wrote:
> 
> Has anyone had experience with their UART fifos being randomly
> disabled?  For some reason, my UART0 fifo is being diabled seemingly
> randomly.  The application itself is not that complex, it receives
a 2
> byte command and sends back 10 bytes of status.  Somehow, the fifos
> get disabled, then a CTI interrupt occurs that I cannot get rid of. 
> In the manual it says to clear CTI I need to read RSR.  I don't see
an
> RSR register, but I would assume that they meant RBR.
RSR stands for Receiver Shift Register. It's program invisible and
connected directly to RBR (See UART architecture block diagram). So
reading should update RSR status.
> 
> Any suggestions?
> 
> Thanks,
> Peter
Hi, Peter

I am interesting which "UART interrupt handling" (U?IIR[3:0]) mode you
use?

Re: Uart FIFOs being disabled

2004-11-22 by peterburdine

--- In lpc2000@yahoogroups.com, "emerg_reanimator"
<emerg_reanimator@y...> wrote:
> 
> --- In lpc2000@yahoogroups.com, "peterburdine" <lordofdawn@h...>
> wrote:
> > 
> > Has anyone had experience with their UART fifos being randomly
> > disabled?  For some reason, my UART0 fifo is being diabled seemingly
> > randomly.  The application itself is not that complex, it receives
> a 2
> > byte command and sends back 10 bytes of status.  Somehow, the fifos
> > get disabled, then a CTI interrupt occurs that I cannot get rid of. 
> > In the manual it says to clear CTI I need to read RSR.  I don't see
> an
> > RSR register, but I would assume that they meant RBR.
> RSR stands for Receiver Shift Register. It's program invisible and
> connected directly to RBR (See UART architecture block diagram). So
> reading should update RSR status.
> > 
> > Any suggestions?
> > 
> > Thanks,
> > Peter
> Hi, Peter
> 
> I am interesting which "UART interrupt handling" (U?IIR[3:0]) mode you
> use?


I am using RBR and THRE.  I probably should have also noted that this
is a motor control board so the data receveived on UART0 is commands
to change the PWM (2&5).

Re: Uart FIFOs being disabled

2004-11-23 by Randy Ott

--- In lpc2000@yahoogroups.com, "peterburdine" <lordofdawn@h...> 
wrote:
> 
> --- In lpc2000@yahoogroups.com, "emerg_reanimator"
> <emerg_reanimator@y...> wrote:
> > 
> > --- In lpc2000@yahoogroups.com, "peterburdine" <lordofdawn@h...>
> > wrote:
> > > 
> > > Has anyone had experience with their UART fifos being randomly
> > > disabled?  For some reason, my UART0 fifo is being diabled 
seemingly
> > > randomly.  The application itself is not that complex, it 
receives
> > a 2
> > > byte command and sends back 10 bytes of status.  Somehow, the 
fifos
> > > get disabled, then a CTI interrupt occurs that I cannot get 
rid of. 
> > > In the manual it says to clear CTI I need to read RSR.  I 
don't see
> > an
> > > RSR register, but I would assume that they meant RBR.
> > RSR stands for Receiver Shift Register. It's program invisible 
and
> > connected directly to RBR (See UART architecture block diagram). 
So
> > reading should update RSR status.
> > > 
> > > Any suggestions?
> > > 
> > > Thanks,
> > > Peter
> > Hi, Peter
> > 
> > I am interesting which "UART interrupt handling" (U?IIR[3:0]) 
mode you
> > use?
> 
> 
> I am using RBR and THRE.  I probably should have also noted that 
this
> is a motor control board so the data receveived on UART0 is 
commands
> to change the PWM (2&5).

Peter,

You are correct that you "read the RSR" by reading a character from 
the RBR.  You must, however handle CTI interrupts.  These can be 
handled using the same code as the RDA handler.  If the FIFO has a 
few characters in it for the length of the timeout period, the CTI 
interrupt will fire and, if the characters are not read, CTI will 
not clear and the FIFOs will cease to operate.  Sounds like this 
might be the problem.

Good luck,
Randy Ott

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.