Fast SPI library for the ST7789 IPS display optimized for AVR Arduinos
Replaces obsolete Arduino_ST7789_Fast: https://github.com/cbm80amiga/Arduino_ST7789_Fast
Significantly optimized for 16MHz AVR Arduino boards (2.5-5x faster than other libraries).
Achieved 7.1Mbps SPI transfer rate (at DIV2/16MHz clock).
In compatiliblity mode it should work with other MCUs, but I didn't test all configurations.
For STM32 (BluePill) there is separate optimized version here: https://github.com/cbm80amiga/Arduino_ST7789_STM
YouTube playlist with all videos related to ST7789:
https://www.youtube.com/playlist?list=PLxb1losWErZ7thUyB05phRR3DoiYN_kcD
Use #define COMPATIBILITY_MODE - then the library should work on all Arduino compatible boards
Remove above define for the best performance on 16MHz AVR
Use #define CS_ALWAYS_LOW for LCD boards where CS pin is internally connected to the ground, it gives better performance
Tested with Arduino IDE 1.6.5 and Adafruit_GFX 1.5.6
Circuit | Front | Back |
---|---|---|
Circuit | Front | Back |
---|---|---|
Circuit | Front | Back |
---|---|---|
Circuit | Front | Back |
---|---|---|
Circuit | Front | Back |
---|---|---|
Circuit | Front | Back |
---|---|---|
Without CS (1.3" only) - use CS_ALWAYS_LOW
LCD pin | LCD pin name | Arduino |
---|---|---|
#01 | GND | GND |
#02 | VCC | VCC (3.3V only!) |
#03 | SCL | D13/SCK |
#04 | SDA | D11/MOSI |
#05 | RES | D9 or any digital |
#06 | DC | D10 or any digital |
#07 | BLK | NC |
With CS - don't use CS_ALWAYS_LOW
LCD pin | LCD pin name | Arduino |
---|---|---|
#01 | GND | GND |
#02 | VCC | VCC (3.3V only!) |
#03 | SCL | D13/SCK |
#04 | SDA | D11/MOSI |
#05 | RES | optional |
#06 | DC | D10 or any digital |
#07 | CS | D9 or any digital |
#08 | BLK | VCC |
If you find it useful and want to buy me a coffee or a beer: