Last active
August 5, 2023 01:30
-
-
Save jools-uk/bf81eb8db548a2bf87b122351f7d6773 to your computer and use it in GitHub Desktop.
ws2812b timing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| @startuml | |
| <style> | |
| timingDiagram { | |
| .red { | |
| LineColor red | |
| LineThickness 4 | |
| } | |
| .blue { | |
| LineColor blue | |
| LineThickness 4 | |
| } | |
| } | |
| </style> | |
| scale 50 as 20 pixel | |
| binary "Spec T0H" as S1 <<blue>> | |
| binary "Spec T0H min" as S2 <<blue>> | |
| binary "Spec T0H max" as S3 <<blue>> | |
| binary "Spec T1H" as S4 <<red>> | |
| binary "Spec T1H min" as S5 <<red>> | |
| binary "Spec T1H max" as S6 <<red>> | |
| concise "2.4Mbaud 3bit" as B1 | |
| concise "2Mbaud 3bit" as B2 | |
| concise "3Mbaud 4bit" as B3 | |
| concise "3Mbaud 4bit" as B4 | |
| !$Tolerance = 150 | |
| !$T0H = 350 | |
| !$T0L = 900 | |
| !$T0Hmin = $T0H - $Tolerance | |
| !$T0Hmax = $T0H + $Tolerance | |
| !$T0Lmin = $T0L - $Tolerance | |
| !$T0Lmax = $T0L + $Tolerance | |
| !$T1H = 900 | |
| !$T1L = 350 | |
| !$T1Hmin = $T1H - $Tolerance | |
| !$T1Hmax = $T1H + $Tolerance | |
| !$T1Lmin = $T1L - $Tolerance | |
| !$T1Lmax = $T1L + $Tolerance | |
| @-50 | |
| S1 is 0 | |
| S2 is 0 | |
| S3 is 0 | |
| @S1 | |
| 0 is 1 | |
| $T0H is 0 | |
| @0 <-> @$T0H : {$T0H ns} | |
| @$T0H <-> @+$T0L : {$T0L ns} | |
| @S2 | |
| 0 is 1 | |
| $T0Hmin is 0 | |
| @0 <-> @$T0Hmin : {$T0Hmin ns} | |
| @$T0Hmin <-> @+$T0Lmax : {$T0Lmax ns} | |
| @S3 | |
| 0 is 1 | |
| $T0Hmax is 0 | |
| @0 <-> @$T0Hmax : {$T0Hmax ns} | |
| @$T0Hmax <-> @+$T0Lmin : {$T0Lmin ns} | |
| @S4 | |
| 0 is 1 | |
| $T1H is 0 | |
| @0 <-> @+$T1H: {$T1H ns} | |
| @$T1H <-> @+$T1L: {$T1L ns} | |
| @S5 | |
| 0 is 1 | |
| $T1Hmin is 0 | |
| @0 <-> @+$T1Hmin : {$T1Hmin ns} | |
| @$T1Hmin <-> @+$T1Lmax : {$T1Lmax ns} | |
| @S6 | |
| 0 is 1 | |
| $T1Hmax is 0 | |
| @0 <-> @+$T1Hmax : {$T1Hmax ns} | |
| @$T1Hmax <-> @+$T1Lmin : {$T1Lmin ns} | |
| @1250 | |
| S1 is 1 | |
| S2 is 1 | |
| S3 is 1 | |
| @0 | |
| B1 is Bit1 | |
| @416 | |
| B1 is Bit2 | |
| @833 | |
| B1 is Bit3 | |
| @1250 | |
| B1 is {-} | |
| @0 | |
| B2 is Bit1 | |
| @500 | |
| B2 is Bit2 | |
| @1000 | |
| B2 is Bit3 | |
| @1500 | |
| B2 is {-} | |
| @0 | |
| B3 is Bit1 | |
| @333 | |
| B3 is Bit2 | |
| @666 | |
| B3 is Bit3 | |
| @1000 | |
| B3 is {-} | |
| @0 | |
| B4 is Bit1 | |
| @333 | |
| B4 is Bit2 | |
| @666 | |
| B4 is Bit3 | |
| @1000 | |
| B4 is Bit4 | |
| @1333 | |
| B4 is {-} | |
| highlight 200 to 500 #LightBlue;line:DimGrey : T0H .35us +-150ns | |
| highlight 750 to 1050 #Pink;line:DimGrey : T1H .9us +-150ns | |
| @enduml |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment