View previous topic :: View next topic |
Author |
Message |
johnpclaude
Joined: 07 May 2004 Posts: 3
|
I2C clock speed shift at +2.5V |
Posted: Fri May 07, 2004 4:47 pm |
|
|
I am using the PIC16L873 in a battery operated circuit, The supply runs about +2.5V +/- 0.2V which is where the I2C clock is specified to switch from 400KHz to 100kHz. Would a speed shift occur during a bus operation and trash it? I am seeing some rare data corruption in the 24AA32A low voltage eeprom.
Can I somehow assert the slow clock and not worry about it? |
|
|
PCM programmer
Joined: 06 Sep 2003 Posts: 21708
|
|
Posted: Fri May 07, 2004 5:56 pm |
|
|
Quote: |
I am using the PIC16L873 in a battery operated circuit, The supply runs
about +2.5V +/- 0.2V which is where the I2C clock is specified to switch
from 400KHz to 100kHz. Would a speed shift occur during a bus
operation and trash it? |
Not sure what you mean. Are you thinking that the
PIC speed or the i2c clock speed somehow changes
automatically if you change the Vdd voltage on the PIC ? |
|
|
Charlie U
Joined: 09 Sep 2003 Posts: 183 Location: Somewhere under water in the Great Lakes
|
|
Posted: Fri May 07, 2004 8:58 pm |
|
|
If I read the spec for the 24AA32A correctly, it is specified to operate at high speed, 400kHz, from 2.5V to 5.5V, and low speed 100kHz from 1.8V to 2.5V. While in general, you may have parts that will operate at high speed with Vdd at or below 2.5V, it is not guaranteed. If your operating voltage can fall below 2.5V, to be certain that you will not have problems, I would operate in slow mode only. This can be set by including the SLOW parameter in your #use I2C() preprocessor command. |
|
|
johnpclaude
Joined: 07 May 2004 Posts: 3
|
|
Posted: Fri May 07, 2004 10:16 pm |
|
|
Thanks for the preprocessor command. I never saw it in the manual. I added it to the #use command and it complied fine. I hope it will work. |
|
|
|