snekboard: Need DMA for SPI now.
authorKeith Packard <keithp@keithp.com>
Sun, 6 Nov 2022 23:12:33 +0000 (15:12 -0800)
committerKeith Packard <keithp@keithp.com>
Sun, 6 Nov 2022 23:12:33 +0000 (15:12 -0800)
Signed-off-by: Keith Packard <keithp@keithp.com>
src/snekboard/Makefile
src/snekboard/snekboard.c

index 44c712d68e9e4de58be657f5a236d863b66f9a7a..5d4f8630e695844d6c97b4028b93eecdd1cbb9eb 100644 (file)
@@ -28,6 +28,7 @@ ALTOS_SRC = \
        ao_panic.c \
        ao_timer.c \
        ao_mutex.c \
+       ao_dma_samd21.c \
        ao_usb_samd21.c \
        ao_spi_samd21.c
 
index 09581affa4be5dc76833cfc3c4edc981439e4d1a..719ea01dd454230005de6af442be839e8d5b9a24 100644 (file)
 
 #include <ao.h>
 #include <ao_led.h>
+#include <ao_dma_samd21.h>
 
 #define SNEK_CS_PORT   (&samd21_port_a)
 #define SNEK_CS_PIN    (11)
 #define SNEK_SPI_INDEX AO_SPI_0_PA08_PA09_PA10
 #define SNEK_SPI_SPEED ao_spi_speed(1000000)
 
+static const uint8_t spi_test[] = {
+       0x55,
+};
+
 static void
 ao_spi_test(void)
 {
        ao_spi_get_bit(SNEK_CS_PORT, SNEK_CS_PIN, SNEK_SPI_INDEX, SNEK_SPI_SPEED);
-       ao_spi_send("hello", 5, SNEK_SPI_INDEX);
+       ao_spi_send(spi_test, sizeof(spi_test), SNEK_SPI_INDEX);
        ao_spi_put_bit(SNEK_CS_PORT, SNEK_CS_PIN, SNEK_SPI_INDEX);
 }
 
@@ -39,6 +44,7 @@ int main(void)
        ao_clock_init();
        ao_task_init();
        ao_timer_init();
+       ao_dma_init();
        ao_spi_init();
        ao_usb_init();
        ao_cmd_register(ao_spi_cmds);