Now studying #BL602 SPI ... Can't wait to get #PineCone driving ST7789 with #LVGL!
https://github.com/bouffalolab/bl_docs/tree/main/BL602_RM/en
#BL602 uses the new SPI Pin Names ... No more MOSI and MISO 👍
https://github.com/bouffalolab/bl_docs/tree/main/BL602_RM/en
...Wait it's still using the old terms. Should be renamed as "Controller" and "Peripheral", according to the guidelines:
https://www.oshwa.org/a-resolution-to-redefine-spi-signal-names/
Raspberry Pi Pico also uses the old SPI terms
#BL602 SPI Registers are remarkably similar to I2C Registers ... So I can reuse my I2C code for SPI 🤔
https://github.com/bouffalolab/bl_docs/tree/main/BL602_RM/en
#BL602 SPI Register Fields look similar to I2C too
https://github.com/bouffalolab/bl_docs/tree/main/BL602_RM/en
Yep #BL602 SPI is copy pasta from I2C ... Even the Register Address. Very nice! 👍
https://github.com/bouffalolab/bl_docs/tree/main/BL602_RM/en
We'll let #BL602 talk simple SPI to BME280 first ... Before talking seriously to ST7789
https://cdn.sparkfun.com/assets/learn_tutorials/4/1/9/BST-BME280_DS001-10.pdf
#BL602 SPI DMA ... Lets you specify a Linked List of Transmit / Receive operations ... That will be executed by the DMA Controller
https://github.com/lupyuen/bl_iot_sdk/blob/master/components/hal_drv/bl602_hal/hal_spi.c#L115
#BL602 SPI DMA uses simple Interrupt Handlers .... Simpler than I2C! Let's experiment with SPI DMA on BME280
https://github.com/lupyuen/bl_iot_sdk/blob/spi/components/hal_drv/bl602_hal/hal_spi.c#L749-L794
#BL602 SPI DMA is used by AliOS VFS file system ... Which is bundled with the BL602 IoT SDK
https://pine64.github.io/bl602-docs/Components/Middleware/vfs/vfs.html