#include "Free_Fonts.h"
#include <TFT_eSPI.h>
#include <SPI.h> // this is needed for display
// The display also uses hardware SPI, plus #9 & #10
#define TFT_CS 15
#define TFT_DC 2
#define TFT_MOSI 23
#define TFT_SCLK 18
float dispTemp = 22.3;
TFT_eSPI tft = TFT_eSPI(); // Invoke custom library with default width and height
void setup(void) {
tft.begin();
tft.setRotation(0);
themeClockTFT(dispTemp, "TEMP", "`C", "88.8", "temp", 1);
}
void loop() {
}
void themeClockTFT(float value, const String& lable, const String& units, const String& valueSample, const String& valueType, unsigned int accuracy) {
int xpos = 10;
int ypos = 45;
int yPad = 0;
int padding = tft.textWidth(String(value, accuracy), FONT8);
tft.setTextDatum(TL_DATUM);
tft.drawString(lable, xpos, ypos, FONT4);
tft.setTextDatum(TR_DATUM);
tft.drawString(units, 240 - xpos, ypos, FONT4);
tft.setTextDatum(TL_DATUM);
tft.setTextPadding(padding);
ypos += tft.fontHeight(FONT8) / 2 + yPad;
tft.drawFloat(value, accuracy, (240 - padding) / 2, ypos, FONT8);
tft.setTextPadding(0);
}