Normally we talk to SPI Display in 4-Wire (8-bit) Mode ... But today we do 3-Wire (9-bit) Mode ... With a sneaky packing hack

rhydolabz.com/documents/33/ST7

Let's connect a Logic Analyser to Stack ... And troubleshoot the SPI connection to ST7789 Display

doesn't seem to be transmitting anything to ST7789 on SPI MOSI (GPIO 17) ... Let's try a different pin for MOSI

Yep MOSI works if we switch to GPIO 4 ... So what's wrong with GPIO 17? 🤔

GPIO 4 works as MOSI but not GPIO 17 ... What if we connect GPIO 4 to 17? Nope still nothing on the Stack ST7789 Display 🤔

Follow

Yep MISO and MOSI are now swapped! This matches the SPI Pin Definitions in Reference Manual ... So from now on we'll always call GLB_Swap_SPI_0_MOSI_With_MISO

github.com/lupyuen/bl_iot_sdk/

Need to verify that our Display is hardwired for "3-line 9bit serial I/F Ⅱ" mode: IM0 = 1, IM1 = 0, IM2 = 1, IM3 = 1 🤔

rhydolabz.com/documents/33/ST7

Let's port moononournation's awesome 9-bit-banging GFX Library to ... And compare the SPI Output with a Logic Analyser

github.com/moononournation/Ard

Since our Display doesn't respond to GFX Library 9-Bit Banging ... Maybe our display isn't hardwired for 3-Wire 9-Bit mode? Let's verify IM0 to 3 with the display maker

rhydolabz.com/documents/33/ST7

What's it like to create software for brand new Prototype Hardware ... Like Stack BL604? All shall be explained in this article

lupyuen.github.io/articles/pin

Show newer
Sign in to participate in the conversation
CleverLibre Social

CleverLibre Social is an inclusive social instance for open discussion, learning, and community.
All cultures welcome.
Hate speech and harassment strictly forbidden.