EmbeddedRelated.com
Forums
Memfault Beyond the Launch

I2c bus speed - LPC2148

Started by Sutton Mehaffey March 5, 2007
I have been having some LCD graphical display issues concerning timing
with my LPC2148. Is the I2C bus speed of 400 Khz independent of the
CPU speed? In other words, is the I2C bus non-adjustable? The
display manufacturer has been trying to help me resolve my timing
issues, but they are testing out the display with a Atmega8535 at
100Khz I2C bus. I think the problem lies there.

Sutton

An Engineer's Guide to the LPC2100 Series

--- In l..., "Sutton Mehaffey" wrote:
>
> I have been having some LCD graphical display issues concerning timing
> with my LPC2148. Is the I2C bus speed of 400 Khz independent of the
> CPU speed? In other words, is the I2C bus non-adjustable? The
> display manufacturer has been trying to help me resolve my timing
> issues, but they are testing out the display with a Atmega8535 at
> 100Khz I2C bus. I think the problem lies there.
>
> Sutton
>
Hi Sutton,

I2C speed is depending on CPU clock and VPB (APB) clock divider.
Assuming you use 14.7456 MHz you will not be able to match 400
kbit/sec exactly but that does not matter, you just don't want to be
faster than 400 kbit. After all, I2C is a synchronous bus. There is no
fixed 400 kHz clock inside the LPC2000 devices.

Bob
Sutton Mehaffey escreveu:
>
> I have been having some LCD graphical display issues concerning timing
> with my LPC2148. Is the I2C bus speed of 400 Khz independent of the
> CPU speed? In other words, is the I2C bus non-adjustable? The
> display manufacturer has been trying to help me resolve my timing
> issues, but they are testing out the display with a Atmega8535 at
> 100Khz I2C bus. I think the problem lies there.
>
> Sutton
>
>

try reading i2c specs and who to work with LCD displays, because they
are very slow, you may have do have delay commands

good work
Rui Dinis
Thanks Bob. I see now. I actually adjusted the CPU I2C downward to
80Khz and 50Khz, but my display still operates at basically the same
speed. I would have thought different. I was just told by the
display manufacturer that the display can only support 100Khz (manual
says 400 Khz - imagine that..).

I've been round and round with this new state of the art graphical LCD
using I2C from Matrix Orbital. They say at 100 Khz that there should
be no delaying necessary except a 60us delay between display commands.
I'm seeing that no matter what the bus speed (100, 80, 50Khz), there
has to be a 400us delay between commands and 600us delay between data
bytes within the same command. That makes the display appear somewhat
slow. If I reduce the delays, the printing of pixels gets messed up
on the screen. So, I'm trying to figure out what all it could be. I
just got new a free software revision from the manufacturer for all my
debugging and troubleshooting, but nothing has changed. Thanks for
the info.

Sutton

--- In l..., "lpc2100_fan" wrote:
>
> --- In l..., "Sutton Mehaffey" wrote:
> >
> > I have been having some LCD graphical display issues concerning timing
> > with my LPC2148. Is the I2C bus speed of 400 Khz independent of the
> > CPU speed? In other words, is the I2C bus non-adjustable? The
> > display manufacturer has been trying to help me resolve my timing
> > issues, but they are testing out the display with a Atmega8535 at
> > 100Khz I2C bus. I think the problem lies there.
> >
> > Sutton
> >
> Hi Sutton,
>
> I2C speed is depending on CPU clock and VPB (APB) clock divider.
> Assuming you use 14.7456 MHz you will not be able to match 400
> kbit/sec exactly but that does not matter, you just don't want to be
> faster than 400 kbit. After all, I2C is a synchronous bus. There is no
> fixed 400 kHz clock inside the LPC2000 devices.
>
> Bob
>

Memfault Beyond the Launch