8 Commits

Author SHA1 Message Date
Ayke van Laethem 5a02fe068b apa102: use 4-byte buffer to improve speed
Instead of sending the APA102 data byte by byte, it's more efficient to
send multiple bytes at once (especially when the SPI peripheral uses
DMA). This requires the apa102.Device object to be a pointer receiver to
avoid excessive heap allocations.

This commit also just happens to work around a hardware bug on the
nrf52832:
https://infocenter.nordicsemi.com/index.jsp?topic=%2Ferrata_nRF52832_Rev2%2FERR%2FnRF52832%2FRev2%2Flatest%2Fanomaly_832_58.html&anchor=anomaly_832_58
2021-05-30 22:39:50 +02:00
deadprogram 42a907035b spi: incorporate change from GH issue feedback
Signed-off-by: deadprogram <ron@hybridgroup.com>
2020-12-15 06:08:59 +01:00
deadprogram 46c9ba9595 spi: remove machine.SPI and replace with drivers.SPI interface for almost all SPI drivers
Signed-off-by: deadprogram <ron@hybridgroup.com>
2020-12-15 06:08:59 +01:00
deadprogram 74c9ff4c76 all: changeover to eliminate all direct use of master/slave terminology
Signed-off-by: deadprogram <ron@hybridgroup.com>
2020-07-30 12:03:09 +02:00
Ayke van Laethem 91539d9ef8 apa102: avoid creating garbage
Avoid creating unnecessary garbage in the following ways:

  * Use the Transfer method instead of the Tx method for single byte
    transfers.
  * Use a statically allocated buffer for the fixed start-of-frame
    sequence.

Running this for a few minutes did not cause the garbage collector to
run. Previously, it would run every second or so in a
persistence-of-vision application.
2020-05-26 19:50:31 +02:00
BCG d1b917b835 Support software SPI for APA102 (Itsy Bitsy M0 on-board "Dotstar" LED as example) (#86)
* Added implementation and example to support software-based SPI for APA102, for use with boards like Adafruit Itsy Bitsy M0 for instance.
2019-09-09 12:31:17 +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 773b01e911 apa102: add support for APA102 SPI controlled LEDs
Signed-off-by: Ron Evans <ron@hybridgroup.com>
2018-12-22 19:14:02 +01:00