Datasheet
The data for pixel #0 (nearest the microcontroller) is issued first, then pixel #1, and so forth to the furthest pixel. This
does not operate like a traditional shift register!
After all the color data is sent, the data line must be held low for a minimum of 50 microseconds for the new colors to
“latch.”
You may want to dig through our Arduino library (https://adafru.it/aZU) for insights. The timing-critial parts are written in
AVR assembly language, but it’s extensively commented with C-like pseudocode.
My Microcontroller Isn’t Fast Enough to Do That
© Adafruit Industries https://learn.adafruit.com/adafruit-neopixel-uberguide Page 98 of 100