Tengo transistores SN74HC14 o BC548 / 2N2222 . Necesito un cambiador de nivel para I2C entre arduino y RPi. Aquí hay un circuito simple de Internet.
El problema es que no tengo ningún MOSFET. ¿Puedo usar transistores NPN en su lugar? ¿O es mejor que use 2 puertas 74HC14 NO como MOSFET único?
Puedes intentar usar BJT. Esto es lo que he creado y funciona (aunque tiene algunas desventajas y es posible que no funcione en todos los casos):
Fuente: http://playground.arduino.cc/Main/I2CBi-direccionalLevelShifter
No, no puedes. El "truco" de usar MOSFET en este tipo de cambiador de nivel se basa en el hecho de que los MOSFET son dispositivos muy simétricos: para todos los propósitos prácticos, las terminales de fuente y drenaje pueden intercambiarse, y el dispositivo funciona de manera idéntica (ignorando los efectos del cuerpo). diodo).
Los BJT no tienen esta propiedad de simetría. Las uniones base-emisor y base-colector están hechas deliberadamente con diferentes propiedades, y aunque obtendrá algo de ganancia usándola en la dirección inversa, es mucho menor que usándola en la dirección correcta.
El 74HC14 tiene pines que son solo de entrada y solo de salida, y no se pueden usar para señales bidireccionales.
usuario_1818839