aboutsummaryrefslogtreecommitdiffstats
path: root/src/ws2812.pio
diff options
context:
space:
mode:
authorLouis Burda <quent.burda@gmail.com>2022-12-02 16:06:32 +0100
committerLouis Burda <quent.burda@gmail.com>2022-12-02 17:18:16 +0100
commit0392766bc379448c907de2bce45d6b57621d95b5 (patch)
treeb87705bfb60a6569769b3c0125a910144c784436 /src/ws2812.pio
parent6defee37f9939991bbf3152e2cd4e18593baa541 (diff)
downloadsxkbd-0392766bc379448c907de2bce45d6b57621d95b5.tar.gz
sxkbd-0392766bc379448c907de2bce45d6b57621d95b5.zip
Added split uart support based on chibios impl
Diffstat (limited to 'src/ws2812.pio')
-rw-r--r--src/ws2812.pio32
1 files changed, 0 insertions, 32 deletions
diff --git a/src/ws2812.pio b/src/ws2812.pio
index ae19a6b..45d646a 100644
--- a/src/ws2812.pio
+++ b/src/ws2812.pio
@@ -1,9 +1,3 @@
-;
-; Copyright (c) 2020 Raspberry Pi (Trading) Ltd.
-;
-; SPDX-License-Identifier: BSD-3-Clause
-;
-
.program ws2812
.side_set 1
@@ -11,10 +5,6 @@
.define public T2 5
.define public T3 3
-.lang_opt python sideset_init = pico.PIO.OUT_HIGH
-.lang_opt python out_init = pico.PIO.OUT_HIGH
-.lang_opt python out_shiftdir = 1
-
.wrap_target
bitloop:
out x, 1 side 0 [T3 - 1] ; Side-set still takes place when instruction stalls
@@ -24,25 +14,3 @@ do_one:
do_zero:
nop side 0 [T2 - 1] ; Or drive low, for a short pulse
.wrap
-
-% c-sdk {
-#include "hardware/clocks.h"
-
-static inline void ws2812_program_init(PIO pio, uint sm, uint offset, uint pin, float freq, bool rgbw) {
-
- pio_gpio_init(pio, pin);
- pio_sm_set_consecutive_pindirs(pio, sm, pin, 1, true);
-
- pio_sm_config c = ws2812_program_get_default_config(offset);
- sm_config_set_sideset_pins(&c, pin);
- sm_config_set_out_shift(&c, false, true, rgbw ? 32 : 24);
- sm_config_set_fifo_join(&c, PIO_FIFO_JOIN_TX);
-
- int cycles_per_bit = ws2812_T1 + ws2812_T2 + ws2812_T3;
- float div = clock_get_hz(clk_sys) / (freq * cycles_per_bit);
- sm_config_set_clkdiv(&c, div);
-
- pio_sm_init(pio, sm, offset, &c);
- pio_sm_set_enabled(pio, sm, true);
-}
-%}