Señales SPI aleatorias en LPD8806 Tira de LED

1

Tengo un largo recorrido de algunas tiras de LED basadas en controladores LPD8806 (que usan una conexión SPI) que estoy controlando a través de una Raspberry Pi. Lo controla simplemente genial, pero cuando todos los LED están apagados (no se apaga completamente, solo habiendo dicho a los chips del controlador que apaguen el LED) algunas de las luces se encenderán. Es realmente extraño, solo unos pocos se convertirán en colores aleatorios después de haber estado sentados durante varias horas. Por lo general, 4 o 5 en una fila y con frecuencia en algún lugar en el medio de la tira.

Lo que no puedo entender es cómo están recibiendo estas señales aleatorias. ¿Podría ser algo con mi conexión a los pines SPI en la Raspberry Pi? Tengo las salidas de datos SPI y los pines del reloj en funcionamiento a través de un convertidor de nivel de Adafruit para llevar el nivel de la señal desde 3.3V hasta los 5V de las tiras.

Soy más un tipo de software, así que probablemente me esté perdiendo algo tonto. ¿Las líneas de señal necesitan algún tipo de límite de filtrado tal vez?

Actualización : tengo 2 rollos, 5 metros cada uno, conectados a la vez. Estoy inyectando energía al comienzo de la carrera y donde el segundo rollo se conecta al primero (de lo contrario, los últimos píxeles se iban apagando).

Lo que he notado ahora es que es solo siempre píxeles al principio del segundo rollo que se están activando. No estoy seguro de por qué, pero tal vez esto dé una pista de lo que está pasando?

Estoy preparado para probar un límite a través de las líneas eléctricas ... pero no tengo idea de qué valor usar. La tapa de 10uF más alta que tengo disponible está clasificada para 100 V, pero aún es pequeña. No puedo imaginar que pudiera manejar 10A (ya que tendría que cablear una tapa para cada ejecución de potencia por separado).

    
pregunta Adam Haile

2 respuestas

1

Aquí está mi interpretación de lo que creo que está sucediendo: -

Los chips utilizados en este producto requieren datos seriales cronometrados y cada chip tiene salidas que pueden alimentar más chips, por lo que puede crear una gran variedad de LED y cada LED puede controlarse individualmente. Esa parece ser la idea, pero el problema general con el control de los LED a través de una serie de registros de desplazamiento es que la persona que escribe el código para controlar los LED tiene que estar al tanto de cuál es el estado de los LED.

No es una tarea fácil y decir, debido al tamaño de la matriz en la que se produjo un reloj malicioso, el "controlador" (también conocido como MCU) no estaría necesariamente al tanto de que el "sistema" ahora no está sincronizado. Supongo que la mitad de los chips se distribuyen a través del producto para simplificar el cableado de los LED. Esto puede agravar el problema si hay interferencias de alguna fuente externa. Puedo ver que se encienden los LED aleatorios y tal vez este sea el problema. / p>

El chip no parece estar 100% adecuadamente documentado y, por supuesto, no hay garantía de que se utilice un desacoplamiento de suministro adecuado en el producto comprado, por lo que es un poco de una lotería en cuanto a lo que realmente está sucediendo pero, dada la "antena "-como la naturaleza del producto y también la falta de una conexión a tierra adecuada en toda la tira de LED, las influencias externas podrían tener un efecto.

Quizás el problema proviene de un enrutador wifi local o de alguien que esté utilizando un simulacro cercano; tal vez alguien que usa un soldador de arco eléctrico o tal vez solo un producto defectuoso.

    
respondido por el Andy aka
1

Me encontré con este mismo problema recientemente con mis tiras LPD8806. Me llevó meses descubrir que mi fuente de alimentación estaba demasiado cerca de mi Pi. Si está utilizando una fuente de alimentación de conmutación, puede estar causando interferencias en el bus SPI. Asegúrese de mantener la fuente de alimentación alejada de la Raspberry Pi o agregando un poco de protección de RF.

    
respondido por el junkert

Lea otras preguntas en las etiquetas