LK204-25 heat from PIC while using I2C

LK/ELK/VK/PK/OK/MX/GLK/EGLK/GVK/GLT Series

Moderators: Henry, Mods

Post Reply
wiseguy586
LCD?
Posts: 2
Joined: Thu May 16, 2002 6:00 pm
Contact:

LK204-25 heat from PIC while using I2C

Post by wiseguy586 »

Hi all --

I have an LK204-25 that's a few years old (board revision 1.23), and I noticed that when I'm doing a lot of transfers to it via I2C, the PIC gets very hot. I would estimate that I update every 250msec. When I do, I reinitialize bar graphs (paranoia), write eight characters, then draw a bar graph. (The bar graph does not display, but that's for my other thread in Developers...) I've found that if unchecked, the PIC will eventually get hot enough that it's uncomfortable to touch for more than a few seconds at a time. It takes my i2c code about 45 instructions to clock out a bit, and my PIC is running at 24MHz, so I'm estimating that I'm clocking it at 133Khz. Is this expected? Should I be putting a small heat sink on the chip?

joshua

Aniso
-=Beloved by all=-
-=Beloved by all=-
Posts: 286
Joined: Tue Aug 14, 2001 6:00 pm
Location: ...I could tell you my velocity...

Post by Aniso »

Wiseguy,

While it worries me to hear about hot PICs, I have a sort of standard reply to questions like this. Hot to humans and hot to electronics are really two different things. If you can touch it at all, it probably isn't really hot.

That said, I don't remember a PIC getting warm, so if anyone can provide a definitive answer here as to whether this is really abnormal, please do. If it is not normal, I would put money on a shorted output or two. Maybe a miswired or faulty keypad, but that is less likely to cause much power usage.

You *could* check the power consumption of the entire unit (preferably with the backlight off) if you have a current meter.

As a final note, how much you "stress" the CPU will not affect the power consumption or heat generation.

wiseguy586
LCD?
Posts: 2
Joined: Thu May 16, 2002 6:00 pm
Contact:

Post by wiseguy586 »

Hi --

Usually when I post places nowadays, I use the nick "joshua", appending underscores as necessary... evidently this one is from ages ago ;)

With regards to actual heat -- I agree that the "touch test" would be fine for some packages, but this package isn't particularly designed to dissipate heat, so I would be inclined to believe that the core is substantially warmer than the package itself.

The shorted output is a semi-possibility. I cheat a little bit in my I2C implementation by driving the lines high on my master when I write, as opposed to having an open collector bus. However, I never do reads from the MO, and I set TRIS to an input when I wait for the ACK -- the most time that the MO might possibly be driving it when I am driving an output is about 400ns (two instructions on my 24MHz PIC).

I'm not sure if I have a good tap here to run it through my ammeter. I can get a very very rough estimation by measuring how much current my laptop's battery's accumulator says when it's plugged in vs. when it's not, but that will include my PIC as well.

WRT stressing the PIC -- I'd imagine that you use the SLEEP instruction when waiting for commands, so if I'm sending it commands fairly often, I'd assume that it's not in SLEEP as often as it otherwise might be.

Thanks!

Aniso
-=Beloved by all=-
-=Beloved by all=-
Posts: 286
Joined: Tue Aug 14, 2001 6:00 pm
Location: ...I could tell you my velocity...

Post by Aniso »

I can't see the I2C implimentation being the cause. The outputs drive about 25mA shorted, so maybe a couple shorted outputs could account for it, but a couple nS here and there just doesn't seem like enough.

As for sleep, no, they don't sleep. They can sleep when they're dead.

I'm sure that the new revisions coming out will sleep, however.

I'm going to ask Tom to put in his 2 cents.

Tom
Matrix Orbital
Matrix Orbital
Posts: 1030
Joined: Mon Jul 19, 2004 4:43 pm
Location: Calgary
Contact:

Post by Tom »

I can't see how the pic is getting hot unless there is something shorted or the pic has some type of problem. Implementation of I2C won't cause the unit to get hot though.

Post Reply