UART with I2C bus interface

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
I'm looking for a UART component with I2C bus interface as a
stand-alone part. So far I have only been able to find 16550 type
devices in large multi-pin packages. Is there such a thing? I would
like to have option of 3.3 or 5.0V VCC powering.


Re: UART with I2C bus interface
Quoted text here. Click to load it

I have never seen an UART with I2C interface ( to the host I suppose )

maxim does an UART with SPI interface

or you can use a microcontroller with slave I2C peripheral and UART to
do the translation, some high speed micro could do all in software

Re: UART with I2C bus interface
The application of such a device intrigues me, a PIC16F88 + a bit of code would
do the
trick. EEPROM in the PIC would allow the programming of different slave
addresses. Or
you could config the slave address with port lines. 5V or 3.3V is no problem -
use a
PIC16LFxx for 3V

-Andrew M

Quoted text here. Click to load it

Re: UART with I2C bus interface

Quoted text here. Click to load it

I don't know of any universal part which does this.
* Do you need the I2C to be slave or master?
* What maximum speed do you need?

Acting as I2C master should be fairly easy, slave mode is much more
complicated because you need to wait for data in slave-receiver mode and not
all masters support clock stretching.

The key problem is that RS232 supports independent transmissions in either
direction while I2C is a master/slave bus.

If I were you I'ld go for a hand-made uController solution.
There are solutions for level shifting, see /


Re: UART with I2C bus interface
Hello Roland,

Thanks for the posting. As usual, I've not adequately specified the

Basically I envision the proposed I2C-UART device to be a slave (the
microcontroller in the system would be the master); routine async baud
rates such as 9600, 19200, 38400 bps, etc., would be the typical data
rate involved.

As I found nothing in this search, I believe making a small
microcontroller be the UART would be the likely solution. I guess $3
microcontroller has obsoleted a $3 UART! It's all part of the learning
curve, I'm learning.....

Thanks again,


Roland Zitzke wrote:
Quoted text here. Click to load it

Re: UART with I2C bus interface
Quoted text here. Click to load it

Please understand that there are sticky timing issues with an
I2C slave. At a minimum, the I2C hardware must be able to
stretch the transfer cycle with clock clamping.

The main cause for the timing problem is the fact that
the master controls the transfer. The clock clamping
is the only means of a slave to get some reaction time.
Of course, the master has to be able to honour the
clock clamping.

When selecting the microcontroller make sure that the
internal I2C hardware is able to run as a slave and
handle the clock cleamping in the hardware - there's
simply not enough time to do it in software alone.


Tauno Voipio
tauno voipio (at) iki fi

Re: UART with I2C bus interface

have a look at the Philips LPC915 (or for that matter 916 / 917). The
only thing it needs is power and ground. The internal oscillator is
good enough for the UART, across the whole temperature range, the I2C
is synchronous anyhow and 2k Flash combined with 128 bytes RAM is
plenty for what you are looking for.

Info would be here:

The appropriate evaluation board could be the MCB900 from Keil which
comes with a 4k compiler.

Hope this help, An Schwob

wb0gaz wrote:
Quoted text here. Click to load it

Site Timeline