#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
void setup() {
// Initialize OLED display with I2C address 0x3C
if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println(F("SSD1306 allocation failed"));
for(;;);
}
// Clear the display buffer
display.clearDisplay();
display.clearDisplay(); // Clear the previous content
display.setTextSize(2);
display.setTextColor(SSD1306_WHITE);
display.setCursor(20, 15);
display.println("WELCOME");
display.display();
delay(4000);
display.clearDisplay();
display.clearDisplay(); // Clear the previous content
display.setTextSize(2);
display.setTextColor(SSD1306_WHITE);
display.setCursor(20, 15);
display.println("SHUBHAM");
display.display();
delay(4000);
// Set up the LED pin as output
pinMode(13, OUTPUT);
}
void loop() {
// Read the state of pin 7
int pin7State = digitalRead(7);
// Check if pin 7 is HIGH
if(pin7State == HIGH) {
// Turn on LED connected to pin 13
digitalWrite(13, HIGH);
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(SSD1306_WHITE);
display.setCursor(20, 20);
display.println("LED ON");
display.display();
} else {
digitalWrite(13, LOW);
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(SSD1306_WHITE);
display.setCursor(20, 20);
display.println("LED OFF");
}
}