Найти в Дзене
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

Снова запускаем.......

Показывает нормально!
Дисплей ST7789 показывает зеркально. Как побороть? Купил в китае IPS дисплейчик 320х240 точек, подключил к Arduino, а он показывает зеркально.
1 минута
358 читали