Saturday, February 25, 2017

RA8875 LCD Flash share with Arduino

Hi!
For some time I have fun with 7" LCD display from Waveshare built on RAiO RA8875 controller chip. One of RA8875 great features is DMA support to load images from onboard flash chip.
Real trouble that there is no way to reprogram flash chip after soldering it to board.
Thanks to Waveshare engineers made header for dedicated flash SPI interface! There is no need to solder flash chip to display PCB, you can connect it to this header.

Idea! RA8875 does not use dedicated SPI all the time, only while DMA transfer is active. So why not share flash chip between two SPI buses: RA internal and Arduino?

There are cool IC's: 74LVC1G3157, single analog/digital SPDT switches. So, almost all time flash chip is connected to RAiO SPI, but when needed, it can be switched to Arduino's SPI bus. Switch control pins are connected to Arduino's CS pin.




Schematic
Version of PCB:

Single side, most jumpers 0805, 5 jumper wires. At bottom switch IC I forgot to make 45 degree trace corner, but all works normal (tested at 10MHz Arduino Due SPI).


And a small video:

Files (open with DipTrace v3.0 and greater):

No comments:

Post a Comment