Friday, April 24, 2009

5V to 3.3V

I've made the change from 5V to 3.3V as shown in the picture. A reader alerted me to this oversight. However, it is not that simple. Discussion here. The internal pull-up resistors are enabled by default. Thus when i measure the I2C pins, they still measure 4.5v. A simple solution is to add a resistor (1K) between the 5V and the 3.3V lines



The correct way to support both 3.3v devices and 5v devices is specified in this document as follows:



"The simple addition of two low-cost transistors, placed between the different voltage level sections of the I²C-bus, separates and transfers the logic voltage levels of the bus lines on either side of the level-shifter." More info in this application note, and here.

Yet another solution is to use bus buffer as specified in the application note:



1 comment: