Adafruit-ST7735-Library-master

intom33
Offline
Зарегистрирован: 26.11.2016

Доброго времени суток Всем !

У меня такой вопрос подключил библиотеку Adafruit-ST7735-Library-master с дисплеем 128Х128 ST7735

все примеры работают нормально но почему то функции из библиотеки Adafruit_GFX_Library не работают

хоть и эта библиотека тоже подключена, кто знает подскажите что надо сделать????

СПАСИБО!

sadman41
Offline
Зарегистрирован: 19.10.2016

Примеры написаны другими функциями?

intom33
Offline
Зарегистрирован: 26.11.2016

например функция drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, uint16_t color) не работает или

попроще drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, uint16_t bg, uint8_t size) тоже не работает хоть они есть в библиотеке Adafruit_GFX.  Может надо как то ее инициализировать ???

intom33
Offline
Зарегистрирован: 26.11.2016

вот простой код

#include <Adafruit_GFX.h>    // Core graphics library
#include <Adafruit_ST7735.h> // Hardware-specific library for ST7735
#include <Adafruit_ST7789.h> // Hardware-specific library for ST7789
#include <SPI.h>

 #define TFT_CS        10
  #define TFT_RST        8 // Or set to -1 and connect to Arduino RESET pin
  #define TFT_DC         9
Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);

void setup(void) {
  tft.initR(INITR_BLACKTAB);      // Init ST7735S chip, black tab
 tft.fillScreen(ST77XX_BLACK);
   tft.setCursor(0, 30);
  tft.setTextColor(ST77XX_RED);
  tft.setTextSize(1);
  tft.println("Hello World!");
  tft.drawChar(20,20,'d',ST77XX_GREEN);
  
}

void loop() {
  
}

после компиляции выдает  это

no matching function for call to 'Adafruit_ST7735::drawChar(int, int, char, int)'

 

b707
Offline
Зарегистрирован: 26.05.2017

intom33 пишет:

попроще

drawChar(int16_t x, int16_t y, unsigned char c, uint16_t color, uint16_t bg, uint8_t size) тоже не работает

а если сравнить число параметров в этом описании функции и в вашем вызове в коде? - никаких мыслей не возникает?

sadman41
Offline
Зарегистрирован: 19.10.2016

Кто вам сказал, что для вывода на ST7735 подходит Adafruit_GFX_Library ?

Я лично в примере вижу:

Adafruit_ST7735 tft = Adafruit_ST7735(TFT_CS, TFT_DC, TFT_RST);
... 
tft.setTextColor(ST77XX_YELLOW);
tft.setTextSize(2);
tft.println("Hello World!");

 

UPD: а, нет, b707 прав - не хватает двух аргументов. Докидываешь и всё компилируется.

 

intom33
Offline
Зарегистрирован: 26.11.2016

Но библиотека Adafruit_GFX_Library там прописана и подключена

#include <Adafruit_GFX.h>    // Core graphics library
#include <Adafruit_ST7735.h> // Hardware-specific library for ST7735
#include <Adafruit_ST7789.h> // Hardware-specific library for ST7789
#include <SPI.h>
intom33
Offline
Зарегистрирован: 26.11.2016

Например функция tft.drawLine(10, 10, 50, 50, ST77XX_RED); работает  хоть и ее нету в библиотеке Adafruit_ST7735

но она есть в библиотеке Adafruit_GFX ???

DetSimen
DetSimen аватар
Offline
Зарегистрирован: 25.01.2017

intom33 пишет:

но она есть в библиотеке Adafruit_GFX ???

Видима, потому, что оне - роцтвенники

intom33
Offline
Зарегистрирован: 26.11.2016

Ну если они родственники тогда почему не работают некоторые функции ??

b707
Offline
Зарегистрирован: 26.05.2017

intom33 пишет:

Ну если они родственники тогда почему не работают некоторые функции ??

потому что вы не умеете ими пользоваться

ответ #4 читали?

intom33
Offline
Зарегистрирован: 26.11.2016

А можно объяснить как пользоваться ?? на простом примере.

intom33
Offline
Зарегистрирован: 26.11.2016

Все вроде разобрался Всем СПАСИБО ))