Pullup and sinking SCL and SDA on I2C?
Rick_H
Posts: 116
I finally have some time to get back too my project but its been 9 months sense last time I touched this.
I was looking at all my data sheets for my project and found something I overlooked when I built and programed it. The MAX521 DAC is a 5V device and it requires 0.7VDD (3.5V) min for SCL and SDA. Currently I am sourcing 3.2V and it works but I am not sure after I put it on a board that something wont change. Should I pullup to 5V and sink, Leave it as is or is their some other method I could use to insure stability?
I was looking at all my data sheets for my project and found something I overlooked when I built and programed it. The MAX521 DAC is a 5V device and it requires 0.7VDD (3.5V) min for SCL and SDA. Currently I am sourcing 3.2V and it works but I am not sure after I put it on a board that something wont change. Should I pullup to 5V and sink, Leave it as is or is their some other method I could use to insure stability?
Comments
-Phil
http://forums.parallax.com/showthread.php?134122
Duane
-Phil
If Rick pulls the I2C lines up to 5V with 10K resistors, wouldn't that be fine for the Prop?
I thought a 2.7K Ohm (or so) resistor was enough to limit the current from 5V to the Prop.
Duane
That might raise the high voltage enough, depending on the forward voltage of the protection diodes with such a low current. I normally prefer suggesting the "right" way to do things first and introducing the "cheats" only if the OP understands the caveats or says that the "right" way is impossible for one reason or another.
Mike,
I think he meant just a 10K pullup to 5V -- no series 2.7K.
-Phil
Yes, the 2.7K was my attempt at remembering the minimum safe value with 5V. I wouldn't use both 10K and 2.7K.
Mike,
I'm glad you said something about the voltage divider problem. While I wasn't suggesting using the two different resistors this time, I had wondered about such a set up at other times.
Duane
I still can't believe I overlooked that and its been working for over a year without fail. It's on a bread board at this time though and I'm sure it will fail once I make it and sell it to someone when thier in the middle of a performance or something crazy like that.
I thought I had a good grasp on the I2C/open collector stuff.
I remembered where I read the "open collector" term before (well, one of the many places). It was in the Propeller Backpack's manual. Here's a schematic from page 17.
So in this case the Propeller can only pull the com line down to 0.90V?
Is this okay because 0.90V is low enough that a Basic Stamp (or a Propeller) would always read it as a logic low?
Is this an example of a "cheat" or the "right" way? (I'm not being sarcastic, I'm not sure.)
My guess is it's a bit of a "cheat" since the Backpack is such a small board. (A very cool product by the way.)
Duane
LOL! I knew someone would bring that up. Yes, as the designer of the Backpack, I can tell you it's a "cheat". As you surmise, it has to do with board size: I simply ran out of room for anything more complicated. But, hey, it works. Given more room, though, I would have preferred to use a level translator.
-Phil
As I've mentioned before, I think the Backpack is a great little Propeller board.
Duane
They're plentiful and cheap.
-Phil
its the only parameter to not really match requirements but it should work.
I spend too much time at mouser and allied, need to broden my horizons a bit, thanks again.
-Phil