#include <U8g2lib.h>
#include <Wire.h> // library requires for IIC communication
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); // initialization for the used OLED display
bool wlcm = false;
void setup() {
Serial.begin(9600);
u8g2.begin();
u8g2.clearBuffer();
}
void loop() {
if (!wlcm) {
u8g2.setFont(u8g2_font_profont22_tr);
u8g2.drawStr(27, 38, "W");
u8g2.sendBuffer();
delay(200);
u8g2.drawStr(39, 38, "e");
u8g2.sendBuffer();
delay(200);
u8g2.drawStr(51, 38, "l");
u8g2.sendBuffer();
delay(200);
u8g2.drawStr(63, 38, "c");
u8g2.sendBuffer();
delay(200);
u8g2.drawStr(75, 38, "o");
u8g2.sendBuffer();
delay(200);
u8g2.drawStr(87, 38, "m");
u8g2.sendBuffer();
delay(200);
u8g2.drawStr(99, 38, "e");
u8g2.sendBuffer();
delay(200);
u8g2.clearBuffer();
u8g2.drawStr(27, 38, "Welcome");
u8g2.sendBuffer();
delay(200);
u8g2.clearBuffer();
u8g2.drawStr(27, 38, "Welcom");
u8g2.sendBuffer();
delay(200);
u8g2.clearBuffer();
u8g2.drawStr(27, 38, "Welco");
u8g2.sendBuffer();
delay(200);
u8g2.clearBuffer();
u8g2.drawStr(27, 38, "Welc");
u8g2.sendBuffer();
delay(200);
u8g2.clearBuffer();
u8g2.drawStr(27, 38, "Wel");
u8g2.sendBuffer();
delay(200);
u8g2.clearBuffer();
u8g2.drawStr(27, 38, "We");
u8g2.sendBuffer();
delay(200);
u8g2.clearBuffer();
u8g2.drawStr(27, 38, "W");
u8g2.sendBuffer();
delay(200);
u8g2.clearBuffer();
u8g2.sendBuffer();
delay(1000);
wlcm = true;
} else {
u8g2.clearBuffer();
u8g2.drawCircle(42, 30, 6);
u8g2.drawCircle(62, 30, 6);
u8g2.drawCircle(82, 30, 6);
u8g2.sendBuffer();
delay(120);
u8g2.clearBuffer();
u8g2.drawCircle(44, 28, 6);
u8g2.drawCircle(60, 32, 6);
u8g2.drawCircle(82, 30, 6);
u8g2.sendBuffer();
delay(120);
u8g2.clearBuffer();
u8g2.drawCircle(49, 25, 6);
u8g2.drawCircle(54, 38, 6);
u8g2.drawCircle(82, 30, 6);
u8g2.sendBuffer();
delay(120);
u8g2.clearBuffer();
u8g2.drawCircle(57, 27, 6);
u8g2.drawCircle(47, 39, 6);
u8g2.drawCircle(82, 30, 6);
u8g2.sendBuffer();
delay(120);
u8g2.clearBuffer();
u8g2.drawCircle(62, 30, 6);
u8g2.drawCircle(42, 30, 6);
u8g2.drawCircle(82, 30, 6);
u8g2.sendBuffer();
delay(120);
u8g2.clearBuffer();
u8g2.drawCircle(66, 35, 6);
u8g2.drawCircle(42, 30, 6);
u8g2.drawCircle(79, 25, 6);
u8g2.sendBuffer();
delay(120);
u8g2.clearBuffer();
u8g2.drawCircle(73, 37, 6);
u8g2.drawCircle(42, 30, 6);
u8g2.drawCircle(72, 23, 6);
u8g2.sendBuffer();
delay(120);
u8g2.clearBuffer();
u8g2.drawCircle(80, 32, 6);
u8g2.drawCircle(42, 30, 6);
u8g2.drawCircle(63, 25, 6);
u8g2.sendBuffer();
delay(120);
u8g2.clearBuffer();
u8g2.drawCircle(82, 30, 6);
u8g2.drawCircle(42, 30, 6);
u8g2.drawCircle(62, 30, 6);
u8g2.sendBuffer();
delay(120);
}
}