Код для вывода ST7789 NO CS — с использованием XIAO ESP32C3
Я пытаюсь добиться от этого экрана хоть чего-то, кроме черноты. Контакт CS присутствует, судя по наличию связи или резисторов и конденсаторов на задней панели дисплея.
Я пробовал использовать библиотеку Arduino ST7789 Fast, но мне интересно, удалось ли кому-нибудь заставить её работать в последнее время. Сначала я получаю сообщение об отсутствии такой библиотеки для avr/pgmspace. Я нашёл решение этой проблемы, добавив:
#if (defined(__AVR__))
#include <avr\pgmspace.h>
#else
#include <pgmspace.h>
#endif
но затем я перехожу сразу к другой ошибке, говоря:
In member function 'void Arduino_ST7789::commonST7789Init(const uint8_t*)':
Arduino15/packages/esp32/hardware/esp32/2.0.11/cores/esp32/Arduino.h:114:70: error: cannot convert 'volatile uint32_t*' {aka 'volatile long unsigned int*'} to 'volatile uint8_t*' {aka 'volatile unsigned char*'} in assignment
#define portOutputRegister(port) ((volatile uint32_t*)GPIO_OUT_REG)
Я не нашел никого с такой же проблемой.
Вот моя распиновка:
| Esp32c3 | St7789 |
|---|---|
| GPIO 2 | DC |
| GPIO 3 | РЕС |
| GPIO 6 | ПДД |
| GPIO 7 | SCL |
| 3 на 3 | Vcc/Lite |
Вот экран, о котором идет речь и Вот микроконтроллер, о котором идет речь
Я также использовал обычную библиотеку ST7789 и заменил вывод CS на -1, но на дисплее всё равно чёрный цвет. Если кто-нибудь может предоставить исходный код для этого или просто подсказать, с чего начать, чтобы попробовать новый код, пожалуйста, дайте мне знать.
1 ответ
У меня был пустой экран с дисплеем 1.3 240x240 (не CS-типа) на XIAO BLE. Решил проблему, отключив заземление от CS-провода и подключив провод к определённому CS-контакту на XIAO.
- Ошибка параллельной компиляции ESP32 TFT_eSPI 8-бит
- Как заставить ESP32 работать с 3,5-дюймовым дисплеем RPi на базе ILI9486 с помощью SPI в Arduino IDE?
- Драйвер Arduino ESP32F-TFT-1.44
- Установка значения float до двух знаков после запятой
- ESP32-CAM первый: 0x8 TG1WDT_SYS_RESET загрузочный цикл
- ESP32 в Arduino-IDE с FS.h и SPIFFS
- esp32 Stack canary watchpoint срабатывает
- Проверка размера во флэш-памяти Esp32
Библиотека оптимизирована для микросхемы AVR, используя часть регистра AVR и ассемблерного кода, поэтому она несовместима с ESP32 в режиме по умолчанию. Добавьте
#define COMPATIBILITY_MODEв первую строку кода (перед макросом#include <file>), чтобы проверить работоспособность. Если нет, используйте другую библиотеку, например, Adafruit ST7789., @hcheung