Ви не увійшли.
Ну і ок. Просто на мою думку зручніше зразу брати контроллер з правильним живленням. Вашої проблеми це не стосується.
2jokeer
Це я кому написав??
Резистивні поділювачи стоять - на Ардуїно 5в на диспе 3.14в
ДЯКУЮ jokeer
tft.init(240, 240, SPI_MODE3);
Допомогло!
Вшистко гра!
Треба читати /issues/
хттпс://github.com/adafruit/Adafruit-ST7735-Library/issues/204
tft.init(240, 240, SPI_MODE3);
Не впевнений, чи вміє SPI на Atmega328P працювати без CS
Вміє. Коли SS в output (а Adafruit_SPITFT конфігурує DC пін в output), то конфлікту не має бути.
чи правильно Adafruit_SPITFT його ініціалізує в такій конфігурації.
А схоже, він ніяк його не ініціалізує. Для використання апаратного контролера, мабуть, потрібно викликати SPI.begin().
Не впевнений, чи вміє SPI на Atmega328P працювати без CS (треба буде глянути даташит). А якщо вміє, то чи правильно Adafruit_SPITFT його ініціалізує в такій конфігурації (треба дивитись в ісходніки бібліотеки).
Спробуйте для експерименту software SPI:
#define TFT_CS -1 // Chip Select не викор. #define TFT_DC 10 // Data/Command → D10 #define TFT_RST 9 // Reset → D9 #define TFT_SDA 11 // MOSI → D11 #define TFT_SCK 13 // SCK → D13 ... Adafruit_ST7789 tft(TFT_CS, TFT_DC, TFT_SDA, TFT_SCK, TFT_RST);
Якщо запрацювало, то скоріш за все SS апаратного контроллера SPI на піні D10 конфліктує з TFT_DC.
Тут з даташіту треба б почати.. Дисплей 3в підключили до 5в контролера? навіщо? є готові 3-вольтові, можна стабілізатор перепаяти, чи level shifter поставити.
cs на дисплеї правильно підключений?
підключив дисп SPI TFT GMT130 v1.0 240x240 ST7789
до Ардуїно
SCK на D13
SDA на D11
RES на D9
DC На D10
BLK - 3.3 вольта
VCC - 3.3 вольта
GND до GND
Резистивні поділювачи стоять - на Ардуїно 5в на диспе 3.14в
#include <Adafruit_GFX.h>
#include <Adafruit_ST7789.h>
#include <SPI.h>
#define TFT_CS -1 // Chip Select не викор.
#define TFT_DC 10 // Data/Command → D10
#define TFT_RST 9 // Reset → D9
Adafruit_ST7789 tft(TFT_CS, TFT_DC, TFT_RST);
void setup() {
tft.init(240, 240);
tft.setRotation(1);
tft.fillScreen(ST77XX_BLACK);
tft.fillRect(0, 0, 80, 80, ST77XX_RED);
tft.fillRect(80, 0, 80, 80, ST77XX_GREEN);
tft.fillRect(160, 0, 80, 80, ST77XX_BLUE);
tft.fillRect(0, 80, 80, 80, ST77XX_CYAN);
tft.fillRect(80, 80, 80, 80, ST77XX_MAGENTA);
tft.fillRect(160, 80, 80, 80, ST77XX_YELLOW);
tft.setTextColor(ST77XX_WHITE);
tft.setTextSize(2);
tft.setCursor(40, 180);
tft.println("ST7789 WORKS! :)");
}
void loop() {
// end
}
Компіляція -Завантаження (Arduino nano) - підсвітка ...і ніц на дисплеї немає
Adafruit-ST7735-Library-master і Adafruit_GFX_Library-1.11.11 стоять
Прошу допомоги