Re: MCF8252 UART using interrupts for Rx

"Marc Vincent" <[email protected]> Tue, 1 Jul 2008 12:39:18 -0400
Newsgroups gmane.comp.hardware.motorola.microcontrollers.coldfire
Message-ID <[email protected]>
Hi Victor.

The MCF5282 UARTs don't have a 16-deep FIFO like the 16550; you don't
get interrupts based on FIFO 3/4 full. If you enable RX ints, you get
an IRQ as soon as the first incoming character is transfered from the
shift register to the receive data buffer. The receive FIFO is 4-deep,
so your interrupt latency has to be less than 4 x (#bits/char) /
baudrate.

You also don't get a "receive timeout" interrupt, this is not a 68302
or a QUICC :-(  On the other hand, if you know the expected receive
buffer length, you can program a DMA channel to retrieve characters
from the UART's receive data buffer on a RX event and get interrupted
at the end of the DMA transfer.

Hope this helps.

Marc Vincent

PS: I'm assuming you're at siamtec. If so, pls say SALUT to Pierre M.
for me and have him give me a shout if any of this does not make
sense. You may remember me or not, I'm a STAS and NTC alumni...



On Mon, Jun 30, 2008 at 2:57 PM, Victor Remete <[email protected]> wrote:
> --------------------------------------------------------------
>       From: Victor Remete <[email protected]>
>         To: [email protected]
>    Subject: MCF8252 UART using interrupts for Rx
>
>    I would like to use the UARTs in the MCF8252 using interrupts.
>    How do I program the UART for reception so that I get an interrupt
>    1. when the Rx FIFO is 3/4 full (trigger level), or
>    2. if no character is received for N character times (timeout,
>          where N=4 in the National Semiconduction NS16550, but I am
>        not picky on the value of N as long as it is 2 or more).
>
>  -------------------------------------
>
>
> ---
> [email protected]              Send a post to the list.
> [email protected]        Join the list.
> [email protected]    Join the list in digest mode.
> [email protected]     Leave the list.
>
>
---
[email protected]              Send a post to the list.
[email protected]        Join the list.
[email protected]    Join the list in digest mode.
[email protected]     Leave the list.