At 05:52 PM 5/18/04 +0000, you wrote:
>Our present product uses the AVRs UART with 9 bit data.
>
>Any insight how this might be accomplished using one of these
>parts ?
It should be possible. I've used 16550's on a PC to do this and the LPC
serial uarts are essential 16550s. The trick is to use 8 bits with either
mark or space parity depending on how you want the ninth bit set. That
does mean you are changing parity on the fly but you usually only do that
at the start (and sometimes end) of a packet. You do need to make sure
there are no transmit buffer interactions (you don't want to modify the
parity of previously buffered data).
On receive the ninth bit can be detected as a parity
violation. Potentially the biggest problem is that you can't set up to
receive only when the ninth bit is set so you must set up your receive
routines to read everything and discard the irrelevant portions (it does
make a 'sniffer' easier to write though). The performance of the LPC
should be able to compensate for the increased overhead.
Robert
" 'Freedom' has no meaning of itself. There are always restrictions,
be they legal, genetic, or physical. If you don't believe me, try to
chew a radio signal. "
Kelvin Throop, III