#include <ArduinoJson.h>
#include <Adafruit_GFX.h>
#include <Adafruit_ILI9341.h>
#define BTN_PIN 5
#define TFT_DC 2
#define TFT_CS 15
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);
#define BLACK 0x0000
#define BLUE 0x001F
#define RED 0xF800
#define GREEN 0x07E0
#define CYAN 0x07FF
#define MAGENTA 0xF81F
#define YELLOW 0xFFE0
#define WHITE 0xFFFF
void setup() {
pinMode(BTN_PIN, INPUT_PULLUP);
tft.begin();
tft.setRotation(1);
tft.setCursor(120,15);
tft.setTextColor(ILI9341_WHITE);
tft.setTextSize(2);
tft.print("A120E101");
tft.drawPixel(148,43,RED);
tft.drawPixel(149,43,RED);
tft.drawLine(5,5,100,5,RED);
tft.fillRect(5,10,100,80,RED);
tft.drawRect(110,10,100,80,CYAN);
tft.fillRoundRect(5, 120, 100, 80, 5, BLUE);
tft.drawCircle(130,150,10,RED);
tft.fillCircle(150,150,10,RED);
tft.drawTriangle(130,200,120,210,140,210,GREEN);
}
bool isMoving = false;
int x =155;
int y =150;
int inc_x = 3;
void loop() {
if (digitalRead(BTN_PIN) == LOW) {
isMoving = !isMoving;
}
if(isMoving){
tft.fillCircle(x,y,10,ILI9341_BLACK);
x = x + inc_x;
tft.fillCircle(x,y,10,RED);
if(x>309 || x<151) inc_x = -inc_x;
tft.fillCircle(x,y,10,RED);
}
delay(50);
}