aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2016-12-27 15:46:39 -0800
committerH. Peter Anvin <hpa@zytor.com>2016-12-27 15:46:39 -0800
commit2660b9308d0d501456b374fc33f88942bf27a736 (patch)
tree923887c73c6363530b1e4fd6f59d4539737ecbeb
parent4d05c420d8fd273b63a6a88299c8213578692a95 (diff)
downloadabc80-2660b9308d0d501456b374fc33f88942bf27a736.tar.gz
abc80-2660b9308d0d501456b374fc33f88942bf27a736.tar.xz
abc80-2660b9308d0d501456b374fc33f88942bf27a736.zip
neopixel.v: WS2813 actually wants a 300 µs reset
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
-rw-r--r--neopixel.v10
1 files changed, 5 insertions, 5 deletions
diff --git a/neopixel.v b/neopixel.v
index ab6eacf..44836b8 100644
--- a/neopixel.v
+++ b/neopixel.v
@@ -145,15 +145,15 @@ module neopixel (
//
// This is true immediately before before stat ctr wrap.
//
- // Chain reset (end of transmission) requires 250 µs starting
- // with WS2813. This is 196 bit times; to simplify the circuitry
+ // Chain reset (end of transmission) requires 300 µs starting
+ // with WS2813. This is 234 bit times; to simplify the circuitry
// and give us enough margin we implement this as
- // 225 bit-times = 288 µs.
+ // 241 bit-times = 308.5 µs.
//
// We use negative numbers (2's complement) for reset;
- // this therefore turns true for cycle -225.
+ // this therefore turns true for cycle -241.
//
- wire b_stat_end = b_stat_cctr[8] & ~b_stat_cctr[7:5];
+ wire b_stat_end = b_stat_cctr[8] & ~b_stat_cctr[7:4];
wire [7:0] b_stat_pctr_p1 = b_stat_pctr + 1'b1;