OK, I try to decreasing the clock frequency, and the minimum clock is 16MHz and the WS2812 works fine.
In my case at 8MHz the WS2812 not work.
Pulse generator code for 16MHz looks like this:
Code:;------------ Pulse generator --------------- NeoBit: IF DataBit = 1 THEN ;generate 800ns pulse NeoPin = 1 ASM nop ENDASM NeoPin = 0 ELSE ;generate 400ns pulse NeoPin = 1 ASM ENDASM NeoPin = 0 ENDIF RETURN
Bookmarks