Thank you for subscribing! You have also earned a badge!
Thank you! Your answer will help ###name### and ###num### other people!
Check awaiting answers to see more people who need help.
Thank you! Your answer will help ###name### and ###num### other people!
Subscribe to "Invite Answer"emails and help others with product questions will earn you "Helpful Badge"!
We invite you to subscribe to our Invite Answer email!
Subscribe and you’ll be invited to answer product’s question by email, which will also earn you a "Helpful Badge"! You can cancel any time on the privacy settings page.
BG344213471 You want to look up the datasheet for "WS2812 5050". The LEDs used are WS2812 5050. The 5050 refers to the size of the LED (5.0mm × 5.0mm). There are also 2020 models (2.0mm × 2.0mm) and the newer B-model, WS2812B. The different models seem to have different timings, but they have a fair amount of timing tolerance and the protocol is the same. Some small adjustments should make your code work on all these models. Just note that some timings are in the 300 ns range. That's 4 clock cycles on a 16MHz AVR (like the ATmega328P found on Arduino Nano). Probably wise to disable interrupts during data transfer. Check the assembly output and count clock cycles or use a logic analyser (the cheap LA 1001 is a must have unless you already have a better one). In your bit pushing loop you either don't need any delays or a few no-op's (1 cycle doing nothing = 62.5 ns delay) for the longer delays.
役に立つ (1)