#include "SPI.h"
#include "Adafruit_GFX.h"
#include "Adafruit_ILI9341.h"

#define TFT_DC 2
#define TFT_CS 3
Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC);

void setup() {
  Serial.begin(115200);
  Serial.println("Hello, WOKWI");
  tft.begin();

  // แสดงข้อความ
  tft.setCursor(20, 120);
  tft.setTextColor(ILI9341_RED);
  tft.setTextSize(3);
  tft.println("Hello STM2");

  tft.setCursor(24, 160);
  tft.setTextColor(ILI9341_GREEN);
  tft.setTextSize(2);
  tft.println("I can do SPI :-)");

  // วาดกราฟฟิก
  tft.fillScreen(ILI9341_BLACK); // ล้างหน้าจอด้วยสีดำ

  // วาดเส้น
  tft.drawLine(10, 10, 100, 10, ILI9341_WHITE); // เส้นตรง (x1, y1, x2, y2, สี)

  // วาดสี่เหลี่ยม
  tft.drawRect(20, 20, 60, 40, ILI9341_BLUE); // สี่เหลี่ยม (x, y, กว้าง, สูง, สี)
  tft.fillRect(100, 20, 60, 40, ILI9341_RED); // สี่เหลี่ยมเติมสี

  // วาดวงกลม
  tft.drawCircle(60, 100, 30, ILI9341_YELLOW); // วงกลม (x, y, รัศมี, สี)
  tft.fillCircle(120, 100, 20, ILI9341_CYAN);  // วงกลมเติมสี

  // วาดสามเหลี่ยม
  tft.drawTriangle(50, 150, 30, 190, 70, 190, ILI9341_MAGENTA); // สามเหลี่ยม
  tft.fillTriangle(110, 150, 90, 190, 130, 190, ILI9341_ORANGE); // สามเหลี่ยมเติมสี
}

void loop() { 
  delay(10); 
}