Flexible OLED Display connected to Apollo 2 Blue

Hi,

I’m migrating an application over to an Apollo 2 Blue processor.

The original used a Flexible OLED on Arduino, so I’m converting this to work on the Apollo.

OLED uses a 3-wire SPI and expects a 9 bit transfer (D/C bit + 8 bits data/command).

Arduino did this by bit-banging the D/C bit, then using SPI to output 1 byte of data.

From various display forums, most developers either bit-bang the entire frame or b-b the D/C bit then use SPI, as per Sparkfun’s.

For Apollo, what are my options? I’d prefer to use a clean SPI if possible.

  1. How hard would it be to adapt the Flex OLED to a 4-wire SPI? What modifcations would be required?

  2. Alternatively, I just do the same, b-b the D/C bit then output the byte via SPI.

  3. Alternatively, could the OLED safely ignore padding? So I send 2 bytes via SPI, these have 9 bits of message and 7 bits of padding which is ignored?

  4. Alternatively, does the OLED have some innocuous command I could pad on to my message? So SPI sends one command + 7 NOP’s. Each is a DC bit + 8 bits. This is a total of 72 bits, or 9 bytes. A bit of a waste, sending one valid command using 9 bytes, but it seems like it would work. Is there such a command that could be used as a NOP?

Regards,

Bryce