Controllo Bit-Banging dei LED WS28xx: Indirizzamento da un Microcontrollore
su
Arduino e altre librerie semplificano il controllo delle strisce LED indirizzabili, ma il loro overhead può limitare la frequenza di aggiornamento, la complessità delle animazioni e la lunghezza effettivamente utilizzabile della striscia. Su un microcontrollore a 8 bit, le prestazioni dipendono anche dal linguaggio di programmazione e dal compilatore: l'Assembly consente di ottenere il controllo più preciso sul timing, mentre il C semplifica i calcoli relativi ai colori, a scapito di una certa perdita di velocità. Questo articolo mette a confronto implementazioni in assembler AVR, IAR e GCC e analizza se, nella pratica, le differenze tra i datasheet dei WS28xx siano rilevanti.
I LED indirizzabili di tipo WS2811 utilizzano un protocollo a un solo filo apparentemente molto semplice. Ogni dispositivo preleva dal flusso in ingresso un valore di colore a 24 bit e inoltra i dati rimanenti al dispositivo successivo, secondo una configurazione “daisy-chain” illustrata nella Figura 1. Ciò...
