3,3 V y 5 V: el error de niveles lógicos que quema placas
Conectas un sensor que funciona de maravilla con Arduino a un ESP32 y, o no lee nada, o la placa deja de arrancar. El culpable casi siempre es el mismo: los dos mundos hablan a tensiones distintas.
Qué pasa por dentro
Un pin de un ESP32 o de un ESP8266 trabaja a 3,3 V y no tolera 5 V. Dentro del chip hay diodos de protección hacia la alimentación: al meter 5 V, ese diodo conduce y empieza a circular corriente donde no debe. A veces el chip aguanta meses y luego falla; a veces muere en el momento. Las dos cosas son igual de malas, porque la segunda al menos avisa.
En el otro sentido el problema es distinto: un pin de 3,3 V puede no llegar al umbral de «1» de una entrada de 5 V. En la práctica muchos chips de 5 V reconocen 3,3 V como nivel alto, pero eso hay que comprobarlo en la hoja de características (VIH), no suponerlo.
Las tres soluciones
1. Divisor de tensión (solo de 5 V a 3,3 V)
Dos resistencias: 10 kΩ en serie y 20 kΩ a masa dan 3,33 V a partir de 5 V. Barato y suficiente para señales lentas: un final de carrera, un pulsador, una salida digital de poca frecuencia.
Su límite es la velocidad: con la capacidad del cable, un divisor de valores altos redondea los flancos y a partir de unos pocos kilohercios la señal deja de ser digital.
2. Conversor de nivel bidireccional
Una placa pequeña con cuatro u ocho canales basada en MOSFET. Funciona en los dos sentidos, va bien con I2C —que necesita justo eso— y cuesta poco más de un euro. Es la solución correcta para I2C, SPI y cualquier bus.
3. Elegir módulos de 3,3 V
La solución más limpia: muchos sensores existen en versión de 3,3 V o admiten un rango amplio de alimentación. Si estás empezando el proyecto, mira esto antes de comprar y te ahorras el conversor.
El caso del I2C
Es el que más confunde. El bus I2C funciona con resistencias de pull-up: los dispositivos solo tiran a masa. Si el maestro es de 3,3 V y los pull-up van a 3,3 V, un esclavo de 5 V normalmente convive sin problema… siempre que ese esclavo no tenga sus propios pull-up a 5 V, cosa que muchos módulos sí llevan. Mira la placa: si ves dos resistencias junto a SDA y SCL, están ahí.
Comprobación antes de conectar
- Mira a qué tensión alimentas el módulo y a qué tensión saca su señal. No siempre coinciden.
- Busca en la hoja de características la tensión máxima de entrada del microcontrolador.
- Si hay dudas, mide la salida del módulo con el polímetro antes de enchufarla al pin.
Treinta segundos de comprobación frente a una placa nueva. La cuenta sale sola.
Lo que necesitas, en nuestra tienda
Secciones relacionadas del catálogo




