/********* Rui Santos Complete project details at https://randomnerdtutorials.com modification: Pin no. 8 pulled up to Vcc when connected to GND shows the message about it *********/ #include #include #include #define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels // Declaration for an SSD1306 display connected to I2C (SDA, SCL pins) Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); void setup() { pinMode(8, INPUT); Serial.begin(115200); if(!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { // Address 0x3D for 128x64 Serial.println(F("SSD1306 allocation failed")); for(;;); } delay(2000); display.clearDisplay(); display.display(); delay(3000); display.setTextSize(3); display.setTextColor(WHITE); display.setCursor(0, 15); // Display static text display.println("Railman"); display.display(); delay(3000); display.clearDisplay(); display.setTextColor(WHITE); display.setCursor(0, 10); display.println("WITA"); display.setCursor(50, 40); display.setTextSize(3); display.println("Was"); display.display(); delay(3000); } void loop() { if (digitalRead (8) == LOW) { display.clearDisplay(); display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(0, 10); display.print("PIN 8"); display.setCursor(0, 40); display.print("Stan LOW"); display.display(); delay(300); } if (digitalRead(8) == HIGH) { display.clearDisplay(); display.setTextSize(2); display.setTextColor(WHITE); display.setCursor(0, 10); display.print("Pin 8"); display.setCursor(0, 30); display.print("Stan HIGH"); display.display(); delay(300); }