Последовал вот этому Вашему совету и написал новый скеч, который указал выше. Из него выяснил, что программа не крашится из-за этого:
File FILE;
FILE = SD.open("/log.txt", FILE_WRITE); // создаём файл test.txt для записи значений
FILE.println(tempereture);
FILE.close();
А крашится из-за этой строки:
tft.fillScreen(TFT_BLACK);
Если её закомментировать, то скетч работает без проблем, я конечно могу заменить эту строчку на чёрный квадрат, для очистки экрана, но не понимаю, почему эта строка вызывает краш скетча, когда нет SD карты.
я к тому, что надо сделать весь код по фэншую, а уж потом разбираться, почему стек крашится, по крайней мере у меня с ESP таким образом получается
PS я с SD на этой библиотеке не работал и подозреваю, что конфликт по SPI, конфигурировать тачскрин приходилось, а вот SD нет, надо лезть и смотреть в библиотеку
#define USER_SETUP_INFO "User_Setup"
#define ST7789_DRIVER // Define additional parameters below for this display
#define TFT_WIDTH 240
#define TFT_HEIGHT 320
#define ST7789_BLACKTAB
#define TFT_MISO PIN_D6
#define TFT_MOSI PIN_D7
#define TFT_SCLK PIN_D5
#define TFT_CS PIN_D8 // Chip select control pin
#define TFT_DC PIN_D4 // Data Command control pin
#define TFT_RST PIN_D0 // Reset pin (could connect to RST pin)
#define TOUCH_CLK PIN_D5 // yellow
#define TOUCH_CS PIN_D3// green Chip select pin (T_CS) of touch screen
#define TOUCH_DIN PIN_D7 // purple
#define TOUCH_DO PIN_D6 /// blue
#define LOAD_GLCD // Font 1. Original Adafruit 8 pixel font needs ~1820 bytes in FLASH
#define LOAD_FONT2 // Font 2. Small 16 pixel high font, needs ~3534 bytes in FLASH, 96 characters
#define LOAD_FONT4 // Font 4. Medium 26 pixel high font, needs ~5848 bytes in FLASH, 96 characters
#define LOAD_FONT6 // Font 6. Large 48 pixel font, needs ~2666 bytes in FLASH, only characters 1234567890:-.apm
#define LOAD_FONT7 // Font 7. 7 segment 48 pixel font, needs ~2438 bytes in FLASH, only characters 1234567890:-.
#define LOAD_FONT8 // Font 8. Large 75 pixel font needs ~3256 bytes in FLASH, only characters 1234567890:-.
#define LOAD_GFXFF // FreeFonts. Include access to the 48 Adafruit_GFX free fonts FF1 to FF48 and custom fonts
// Comment out the #define below to stop the SPIFFS filing system and smooth font code being loaded
// this will save ~20kbytes of FLASH
#define SMOOTH_FONT
#define SPI_FREQUENCY 27000000
#define SPI_READ_FREQUENCY 20000000
#define SPI_TOUCH_FREQUENCY 2500000
#define TFT_RGB_ORDER TFT_BGR
#define TFT_INVERSION_OFF