8 подписчиков
Дисплей ST7789 показывает зеркально. Как побороть?
Купил в китае IPS дисплейчик 320х240 точек, подключил к Arduino, а он показывает зеркально.
Часов несколько убил на поиски проблемы в интернетах, хотел было его уже ликвидировать, но нашелся добрый нерусский человек, который другому такому же нерусскому по нерусски что-то расплывчато объяснял на каком-то нерусском форуме. А пальцем показать не хотел. Нерусский, что с него взять.
Так вот как проблема решилась, показываю пальцем:
1) Подключаем с использованием библиотеки Adafruit
//------- INCLUDE -------------//
<Adafruit_GFX.h> // Core graphics library
<Adafruit_ST7789.h> // Hardware-specific library for ST7789
<SPI.h>
2) Назначаем пины
//------- PIN SETUP -----------//
...
// VCC экрана припаяно на +5v напрямую
SDA A4 // Экран SDA A4
DC 12 // Экран DC D8
CS 9 // Экран CS D9
SCK 13 // Экран SCK D13
RST 4 // Экран RST D4
3) Создаем экземпляр экрана
Adafruit_ST7789 tft = Adafruit_ST7789(CS, DC, SDA, SCK, RST);
4) В Setup() инициализируем
void setup() {
//Экран
tft.init(240, 320); // экранчик с таким разрешением, писать именно так
tft.setRotation(1); // ширина 320 высота 240
}
Запускаем...........
Зеркалит.
Плюемся, ругаемся матом, гуглим, яндексим, еще раз плюемся, три раза ругаемся матом....
5) Лезем в папку где лежит библиотека, и в файле Adafruit_ST77xx.h
меняем строчку
ST77XX_MADCTL_MY 0x20 //исходно было так: 0x80 , сохраняем файл Adafruit_ST77xx.h
Снова запускаем.......
Показывает нормально!
1 минута
13 декабря 2021
358 читали