///< FILENAME: Voltmeter.ino
///< CONFIG: Must be configured for proper platform
///< CONFIG: Config 0=IDE MODE, Config 1=WOKII MODE
#define CONFIG 2
#if CONFIG == 0
#define CONFIG_TEXT "IDE"
#elif CONFIG == 1
#define CONFIG_TEXT "WOKII"
#elif CONFIG == 2
#define CONFIG_TEXT "TFT_eSPI"
#endif
///< INCLUDE: This includes all variables, defintions, libraries & drivers required
///< INCLUDE:
#include "include.h"
//==================================================================================
#define SCREEN_WIDTH 240
#define SCREEN_HEIGHT 240
// Assign human-readable names to some common 16-bit color values:
#define BLACK 0x0000
#define BLUE 0x001F
#define RED 0xF800
#define GREEN 0x07E0
#define CYAN 0x07FF
#define MAGENTA 0xF81F
#define YELLOW 0xFFE0
#define WHITE 0xFFFF
// Rotations 0,2 = portrait : 0->USB=right,upper : 2->USB=left,lower
// Rotations 1,3 = landscape : 1->USB=left,upper : 3->USB=right,lower
const uint16_t rotation = 0; //(0->3)
const uint16_t crnrname = 0;
void setup() {
tft.begin();
tft.setRotation(rotation);
tft.fillScreen(BLACK);
tft.setTextColor(WHITE);
tft.setTextSize(3);
// CharacterGrid();
}
// END SETUP
void loop() {
int16_t x = 120;
int16_t y = 120;
int16_t START_ANGLE = 0;
int16_t STOP_ANGLE = 45;
int16_t ARC_SEGMENTS = 3;
int16_t rx = 120;
int16_t ry = 120;
int16_t ARC_THICKNESS = 20;
int16_t ARCS = 3;
int16_t ARC_SWEEPS = 0;
for (ARC_SWEEPS = 0; ARC_SWEEPS <= ARCS; ARC_SWEEPS++) {
fillArc1(x, y, START_ANGLE, STOP_ANGLE, ARC_SEGMENTS, rx - (ARC_SWEEPS * ARC_THICKNESS), ry - (ARC_SWEEPS * ARC_THICKNESS), ARC_THICKNESS, (ARC_SWEEPS * 0x010F) + ORANGE);
}
START_ANGLE = 90;
STOP_ANGLE = START_ANGLE + 30;
for (ARC_SWEEPS = 0; ARC_SWEEPS <= ARCS; ARC_SWEEPS++) {
fillArc2(x, y, START_ANGLE, STOP_ANGLE, ARC_SEGMENTS, rx - (ARC_SWEEPS * ARC_THICKNESS), ry - (ARC_SWEEPS * ARC_THICKNESS), ARC_THICKNESS, (ARC_SWEEPS * 0x010F) + GREEN);
}
START_ANGLE = STOP_ANGLE + 1;
STOP_ANGLE = START_ANGLE + 30;
for (ARC_SWEEPS = 0; ARC_SWEEPS <= ARCS; ARC_SWEEPS++) {
fillArc2(x, y, START_ANGLE, STOP_ANGLE, ARC_SEGMENTS, rx - (ARC_SWEEPS * ARC_THICKNESS), ry - (ARC_SWEEPS * ARC_THICKNESS), ARC_THICKNESS, (ARC_SWEEPS * 0x010F) + YELLOW);
}
START_ANGLE = STOP_ANGLE + 1;
STOP_ANGLE = START_ANGLE + 30;
for (ARC_SWEEPS = 0; ARC_SWEEPS <= ARCS; ARC_SWEEPS++) {
fillArc2(x, y, START_ANGLE, STOP_ANGLE, ARC_SEGMENTS, rx - (ARC_SWEEPS * ARC_THICKNESS), ry - (ARC_SWEEPS * ARC_THICKNESS), ARC_THICKNESS, (ARC_SWEEPS * 0x010F) + RED);
}
HOLDING(5000);
tft.fillScreen(BLACK);
Serial.println("reset");
} // END LOOP