#include <Wire.h>
#include <Adafruit_SSD1306.h>
#include <WiFi.h>
#include <time.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire,-1);
const char* ssid="Wokwi-GUEST";
const char* password="";
const char* ntpServer="pool.ntp.org";
const long gmtoffset_sec=28800;
const int daylightOffset_sec=0;
bool OLEDStatus=true;
void setup(){
Serial.begin(9600);
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)){
Serial.println(F("SSD1306 allocation failed"));
OLEDStatus=false;
}
Serial.printf("Try to %S",ssid);
WiFi.begin(ssid,password);
while(WiFi.status() !=WL_CONNECTED){
delay(5000);
Serial.print(".");
}
Serial.println("Connected");
configTime(gmtoffset_sec,daylightOffset_sec,ntpServer);
}
void loop (){
struct tm timeinfo;
if(!getLocalTime(&timeinfo)){
Serial.println("Time fail");
return;
}
Serial.println(&timeinfo,"%A,%B %d %Y %H:%M:%S");
if(OLEDStatus==true){
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(WHITE);
display.setCursor(4,0);
display.setTextColor(WHITE,BLACK);
display.println(&timeinfo,"%F");
display.setCursor(24,16);
display.println(&timeinfo,"%A");
display.setCursor(16,32);
display.println(&timeinfo,"%T");
display.setCursor(4,48);
display.println("1091227149");
display.display();
}
delay(1000);
}