for led jacket
Fork of WS2812 by
Revision 2:645ab1279245, committed 2017-08-16
- Comitter:
- elmoow
- Date:
- Wed Aug 16 23:24:49 2017 +0000
- Parent:
- 1:8910a1fcbdb0
- Commit message:
- final1
Changed in this revision
WS2812.cpp | Show annotated file Show diff for this revision Revisions of this file |
WS2812.h | Show annotated file Show diff for this revision Revisions of this file |
diff -r 8910a1fcbdb0 -r 645ab1279245 WS2812.cpp --- a/WS2812.cpp Sat Dec 10 09:18:10 2016 +0000 +++ b/WS2812.cpp Wed Aug 16 23:24:49 2017 +0000 @@ -29,11 +29,28 @@ void WS2812::send0() { dataOut = 1; - //asm("nop"); -// asm("nop"); -// asm("nop"); - -//--------------hitung manual +//0.4uS (28 nops) + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); @@ -42,62 +59,17 @@ asm("nop"); asm("nop"); dataOut = 0; - //asm("nop"); -// asm("nop"); -// asm("nop"); -// asm("nop"); -// asm("nop"); -// asm("nop"); -// -// asm("nop"); -// asm("nop"); -// asm("nop"); - -//-----------------hitung manual - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - +//0.85uS (59 nops) asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - - asm("nop"); - asm("nop"); asm("nop"); asm("nop"); asm("nop"); @@ -106,121 +78,133 @@ asm("nop"); asm("nop"); asm("nop"); - + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - + asm("nop"); + asm("nop"); + asm("nop"); asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); asm("nop"); asm("nop"); } void WS2812::send1() { dataOut = 1; - //asm("nop"); -// asm("nop"); -// asm("nop"); -// asm("nop"); -// -// asm("nop"); -// asm("nop"); -// asm("nop"); -//----------------------------------- +//0.8uS (55nops) + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); + asm("nop"); asm("nop"); - + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); dataOut = 0; - // asm("nop"); -// asm("nop"); -// asm("nop"); -// -// asm("nop"); -// asm("nop"); -// asm("nop"); -//-----------------hitung manual +//0.45uS (30 nops) asm("nop"); - asm("nop"); - asm("nop"); + asm("nop"); asm("nop"); - asm("nop"); - - asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - asm("nop"); - - asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - - asm("nop"); + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - + asm("nop"); asm("nop"); asm("nop"); asm("nop"); asm("nop"); - asm("nop"); - + asm("nop"); asm("nop"); asm("nop"); asm("nop");
diff -r 8910a1fcbdb0 -r 645ab1279245 WS2812.h --- a/WS2812.h Sat Dec 10 09:18:10 2016 +0000 +++ b/WS2812.h Wed Aug 16 23:24:49 2017 +0000 @@ -1,7 +1,6 @@ #ifndef WS2812_H #define WS2812_H #include "mbed.h" -#include "USBSerial.h" class WS2812 {