#1 Програмування Arduino » uno+tft2.4+bme280 - не выводит показания на экран с датчика » 2020-11-28 03:56:16

ruslanius
відповідей: 0

Помогите разобраться где мой косяк. По отдельности все работает, а вот при выводе на экран с датчика ничего не показывает и идет возврат к белому экрану

#include <SPFD5408_Adafruit_GFX.h>    
#include <SPFD5408_Adafruit_TFTLCD.h> 
#include <SPFD5408_TouchScreen.h>  
                  
#include <Adafruit_Sensor.h>                              // Подключаем библиотеку Adafruit_Sensor 
#include <Adafruit_BME280.h>                              // Подключаем библиотеку Adafruit_BME280 
#define SEALEVELPRESSURE_HPA (1013.25)                    // Задаем высоту                 
#define BME280_ADDRESS                (0x76)

Adafruit_BME280 bme280; // BME280 на I2C

// *** Define Touchscreen Pin
#define YP A1
#define XM A2
#define YM 5
#define XP 6

// *** Define Value of Touchscreen input
#define TS_MINX 125
#define TS_MINY 85
#define TS_MAXX 965
#define TS_MAXY 905
TouchScreen ts = TouchScreen(XP, YP, XM, YM, 300);

// *** Define Pin of LCD used
#define LCD_CS A3
#define LCD_CD A2
#define LCD_WR A1
#define LCD_RD A0
#define LCD_RESET A4

// *** Define Name of Color
#define BLACK   0x0000
#define WHITE   0xFFFF
#define RED     0xF800
#define GREEN   0x07E0
#define BLUE    0x001F
#define CYAN    0x07FF
#define MAGENTA 0xF81F
#define YELLOW  0xFFE0
#define GREY    0x2108

Adafruit_TFTLCD tft(LCD_CS, LCD_CD, LCD_WR, LCD_RD, LCD_RESET);

#define MINPRESSURE 10
#define MAXPRESSURE 1000

// Meter colour schemes
#define RED2RED 0
#define GREEN2GREEN 1
#define BLUE2BLUE 2
#define BLUE2RED 3
#define GREEN2RED 4
#define RED2GREEN 5


String txt1="";

void setup() {
  
Serial.begin(9600);
  bme280.begin();// initialize the BME280 sensor
  tft.reset(); 
  tft.begin(0x9341);  //Or replace it with 0x9325, 0x9228, 0x9230
  tft.setRotation(1); // 
   tft.setCursor(22, 10); 
    tft.setTextColor(YELLOW); 
    tft.setTextSize(2); 
   tft.print("METEO"); 
}

void loop() {

delay(1000);
 
   

txt1="Temp=";

         txt1= txt1+String(bme280.readTemperature());

         txt1= txt1+" *C";
    tft.setCursor(122, 10); 
    tft.setTextColor(YELLOW); 
    tft.setTextSize(2); 
    tft.print(txt1);
    

}

Підвал форуму