Ron Evans
5f4806f0f9
ws2812: work-arounds to allow Digispark to control WS2812 LEDs
...
Signed-off-by: Ron Evans <ron@hybridgroup.com >
2020-01-30 14:24:39 +01:00
BCG
f4bccd1fed
Added nrf52840 tag to ws2812
2020-01-06 07:37:21 +01:00
Ayke van Laethem
7b56e61d52
ws2812: add support for simulation
...
Call a special __tinygo_ws2812_write_byte function to send a single
byte.
2019-12-14 22:16:41 +01:00
Ayke van Laethem
514b436889
ws2812: fix "invalid symbol redefinition" error
...
Named local labels shouldn't be used in LLVM because they might get
duplicated resulting in multiple symbol definitions and a compiler
error. Instead, use numeric labels.
2019-12-14 22:11:10 +01:00
BCG
7233452819
Added Feather M0 and Trinket M0 to build tags for WS2812
2019-12-12 14:28:21 +01:00
Jonathan Basseri
f822da51fe
Add support for Cortex-M4 120MHz
...
This adjusts the timing for 120MHz as seen on atsamd51 boards. The
timing was kept as close as possible to the Cortex-M4 64MHz logic in
ws2812_m4_64m.go.
Tested: This works on ItsyBitsy-M4
2019-12-06 11:33:55 +01:00
Jonathan Basseri
c62d7db35d
Fix number in comment
...
assembly comment was counting the # of nops.
2019-12-06 11:33:55 +01:00
Ayke van Laethem
d80f619c9f
ws2812: fix timings for the nrf51
...
The timings needed to be changed slightly for ws2811 chips which are
slightly slower.
2019-08-19 10:55:00 +02:00
Brad Erickson
c91888a099
ws2812: Add build tag for Arduino Nano33 IoT
...
Uses `arduino_nano33` to handle only this board. Other boards with
the same chip will need a separate tag.
2019-08-15 17:38:27 +02:00
Ayke van Laethem
00a9b9db77
ws2812: better support the nrf52832
...
This has cost me _hours_ to find. There are many clones of the ws2812
and they have slightly different timing characteristics. Some don't work
so well when you get close to the minimum T1H time: a 1-bit may be
interpreted as a 0-bit.
2019-06-03 19:25:24 +02:00
Ron Evans
c09f0a8075
all: switch to using custom domain for all drivers
...
Signed-off-by: Ron Evans <ron@hybridgroup.com >
2019-05-29 13:33:50 +02:00
Ron Evans
3f946868e1
all: refactor all current drivers to use new machine.Pin interface
...
Signed-off-by: Ron Evans <ron@hybridgroup.com >
2019-05-26 21:46:33 +02:00
Ayke van Laethem
7116778235
ws2812: add support for M0 at 48MHz: most SAMD21 boards
2019-02-24 23:10:10 +01:00
Ayke van Laethem
4ff437e5d4
ws2812: add nrf52 support, update timings for m0 and avr
...
This commit adds support for the nrf52, which is a Cortex-M4 running at
64MHz.
While implementing this, I discovered that the timings for AVR/16MHz and
Cortex-M0 at 16MHz weren't quite right. They do work, but were slightly
out of spec. So I fixed this as well.
2019-02-22 07:10:22 +01:00
Ayke van Laethem
4c21e79d0e
ws2812: switch to different color format
...
Use image/color.RGBA to represent RGB colors. This is more standard.
2018-12-22 16:37:36 +01:00
Ayke van Laethem
0d692cfd0a
ws2812: provide proper file-like interface in Device
...
* Return len and errors in the Write method, to implement io.Writer.
* Return a nil error in WriteByte, for compatibility with bufio.
2018-12-22 16:35:27 +01:00
Ayke van Laethem
aef8d42d42
ws2812: add support for the Arduino
2018-11-20 21:07:04 +01:00
Ayke van Laethem
16a5f82d44
ws2812: rename WS2812 to Device
...
This is more consistent with the other drivers.
2018-11-16 14:55:00 +01:00
Ayke van Laethem
c23954059f
ws2812: improve documentation
2018-11-16 12:21:17 +01:00
Ayke van Laethem
1f27817061
Initial commit
2018-10-15 20:47:33 +02:00