diff --git a/sketch/Face.ino b/sketch/Face.ino index 8d71f22..48cdc30 100644 --- a/sketch/Face.ino +++ b/sketch/Face.ino @@ -3,7 +3,7 @@ Face::Face(LCD _lcd) : x(3), lcd(_lcd) {} void Face::blink() { - lcd.clear(); + //lcd.clear(); lcd.drawBlink(x, 0); lcd.drawBlink(x+1, 0); lcd.drawRectangle(x+7, 0); @@ -13,7 +13,7 @@ void Face::blink() { } void Face::drawEyes() { - lcd.clear(); + //lcd.clear(); lcd.drawRectangle(x, 0); lcd.drawRectangle(x+1, 0); lcd.drawRectangle(x+7, 0); @@ -40,7 +40,7 @@ void Face::defaultPos() { } void Face::drawAngry() { - lcd.clear(); + //lcd.clear(); lcd.drawRectangle(x, 0); lcd.drawChar(x+1, 0, 6); lcd.drawChar(x+7, 0, 7); @@ -52,7 +52,7 @@ void Face::drawAngry() { } void Face::drawLove() { - lcd.clear(); + //lcd.clear(); lcd.drawChar(x, 0, 2); lcd.drawChar(x+1, 0, 3); diff --git a/sketch/sketch.ino b/sketch/sketch.ino index c6d89e9..dbe3aa2 100644 --- a/sketch/sketch.ino +++ b/sketch/sketch.ino @@ -9,6 +9,7 @@ void setup() { lcd.begin(16, 2); lcd.createChar(0, rectangle); lcd.createChar(1, blink); + lcd.createChar(2, Heart1); lcd.createChar(3, Heart2); lcd.createChar(4, Heart3); @@ -17,41 +18,34 @@ void setup() { lcd.createChar(6, angryL); lcd.createChar(7, angryR); - Serial.begin(9600); } void loop() { - face.drawEyes(); - delay(1200); - - face.drawLeftSideEye(); - delay(500); - - face.drawRightSideEye(); - delay(500); - - face.defaultPos(); - face.drawEyes(); - delay(800); - - face.blink(); - delay(300); - - face.drawEyes(); - delay(800); - - face.drawAngry(); - delay(800); - - face.drawEyes(); - delay(800); - - face.drawLove(); - delay(1000); - - Serial.print("[CMD]"); - Serial.println("[firefox --new-window 'https://www.terre-plate.org/terre-plate-preuve-ultime/']"); - Serial.print("[CMD]"); - Serial.println("[pwd]"); + char last = 0; + if (Serial.available() > 0) { + char c = Serial.read(); + if (c != last && c >= '0' && c <= '5') + lcd.clear(); + if (c == '1') { + face.drawEyes(); + } else if (c == '2') { + face.blink(); + delay(300); + face.drawEyes(); + } else if (c == '3') { + face.drawLeftSideEye(); + delay(500); + lcd.clear(); + face.drawRightSideEye(); + delay(500); + lcd.clear(); + face.defaultPos(); + face.drawEyes(); + } else if (c == '4') { + face.drawAngry(); + } else if (c == '5') { + face.drawLove(); + } + } }