Mi PCB controla un LCD 1602 en modo de 4 bits a través de un cable plano de AWG28 (0,08 mm2) de 0,5-1 m de largo. A veces tengo problemas de sincronización de nibble. Se puede ver en el LCD como caracteres extraños o basura.
Esto no ocurre en mi entorno de prueba (banco de trabajo), pero en el campo, donde hay cargas inductivas de conmutación (relés, solenoides, motores, etc.), se puede ver.
Hasta ahora solo he podido hacer un paso temporal, donde reinicio el LCD cada minuto y los nibbles vuelven a estar sincronizados. En mi banco de trabajo puedo recrear el problema al encender y apagar rápidamente un solenoide de 12V cerca del cable plano.
A continuación se muestra un esquema simplificado de mi circuito, centrándose solo en la parte del LCD. Por favor, échale un vistazo y dime si encuentras algo obvio que pueda mejorar para tener una mejor inmunidad al ruido en la línea del LCD.
Si es posible, quiero dejar que la placa hija sea compatible con versiones anteriores y rediseñar/cablearla como último recurso.
El PDF original se puede descargar desde:
https://drive.google.com/file/d/13Xz6-iv1__BDDoMWHfCxqTtLst7OPdLC/view?usp=sharing
Editar: (26.11.2023) Pude conseguir 10x0,14mm2 de cable apantallado, unos cuantos ferritas (redondos y planos también) y realicé algunas pruebas. La fuente de ruido era un solenoide de 12V - tipo desconocido, alrededor de 3 vatios. Los resultados:
- Sin ningún apantallamiento o ferrita, el osciloscopio muestra lo siguiente al medir la línea de Vcc del LCD:
- Usando 2 ferritas planas (el doble de anchas que mi cable plano, así que pasé mi cable dos veces por ellas):
- Usando un cable apantallado redondo de 10x0,14mm2 con 2 ferritas, el apantallamiento atado a GND en el lado de la placa principal:
Obtuve los mismos resultados al sondear el pin RS o EN. La configuración de prueba fue: fuente de alimentación de banco Voltcraft 4005, osciloscopio Owon XDS3062A (sonda 10x, acoplamiento AC, sonda colocada directamente en los pines de la pantalla), el solenoide se alimentaba desde la misma fuente de alimentación que la placa principal. Repetí las pruebas alimentando el solenoide desde una batería de plomo-ácido de 12V. Los voltajes pico a pico eran aproximadamente un 30% más bajos, pero aún suficientes para confundir la pantalla a veces.
Luego intenté agregar un estrangulador de modo común antes de los terminales de entrada. Nuevamente mejoró un poco la inmunidad al ruido, pero aún no lo suficiente como para decir que es una solución sólida. El estrangulador no fue medido o calculado previamente, utilicé uno que tenía por ahí (extraído de una antigua fuente de alimentación ATX).
Editar (06.12.23): Puede que haya encontrado una forma de superar este problema. No lo llamaría una solución, pero definitivamente una mejora. Agregué capacitores de 1nF a las líneas de datos en el lado del LCD del cable (el otro extremo de los capacitores unido a GND), y mejoró más que agregar ferritas y cable apantallado juntos. Antes de este "truco", podía desordenar la pantalla al encender y apagar un solenoide cerca del cable del LCD unas 6 veces de cada 10 intentos, después de esta modificación quizás 1 de cada 50. Me gustaría agregar que esto funciona para mi situación exacta, y no estoy seguro de que sea aplicable a otros diseños. Me permitieron poner estos capacitores en mis líneas de señal porque la frecuencia de mi señal es bastante baja (<100kHz) y no degrada significativamente el tiempo de subida. También, después de leer muchos informes de diseño, sospecho que tengo ruido de modo común en estas líneas cuando el interruptor de carga inductiva se apaga. Para esto, intentaré mejorar mi PCB, agregando un filtro de modo común después del convertidor buck de 12V-5V.