fix: eyes timing

also fix the robot strabism
This commit is contained in:
DinoMalin 2025-03-06 14:51:33 +01:00
parent ab5c764fba
commit 15e3806699
2 changed files with 15 additions and 18 deletions

View File

@ -3,25 +3,24 @@
Face::Face(LCD _lcd) : x(3), lcd(_lcd) {} Face::Face(LCD _lcd) : x(3), lcd(_lcd) {}
void Face::blink() { void Face::blink() {
//lcd.clear();
lcd.drawBlink(x, 0); lcd.drawBlink(x, 0);
lcd.drawBlink(x+1, 0); lcd.drawBlink(x+1, 0);
lcd.drawRectangle(x+7, 0);
lcd.drawRectangle(x+8, 0); lcd.drawRectangle(x+8, 0);
lcd.drawRectangle(x+7, 1); lcd.drawRectangle(x+9, 0);
lcd.drawRectangle(x+8, 1); lcd.drawRectangle(x+8, 1);
lcd.drawRectangle(x+9, 1);
} }
void Face::drawEyes() { void Face::drawEyes() {
//lcd.clear();
lcd.drawRectangle(x, 0); lcd.drawRectangle(x, 0);
lcd.drawRectangle(x+1, 0); lcd.drawRectangle(x+1, 0);
lcd.drawRectangle(x+7, 0);
lcd.drawRectangle(x+8, 0); lcd.drawRectangle(x+8, 0);
lcd.drawRectangle(x+9, 0);
lcd.drawRectangle(x, 1); lcd.drawRectangle(x, 1);
lcd.drawRectangle(x+1, 1); lcd.drawRectangle(x+1, 1);
lcd.drawRectangle(x+7, 1);
lcd.drawRectangle(x+8, 1); lcd.drawRectangle(x+8, 1);
lcd.drawRectangle(x+9, 1);
} }
void Face::drawLeftSideEye() { void Face::drawLeftSideEye() {
@ -40,27 +39,25 @@ void Face::defaultPos() {
} }
void Face::drawAngry() { void Face::drawAngry() {
//lcd.clear();
lcd.drawRectangle(x, 0); lcd.drawRectangle(x, 0);
lcd.drawChar(x+1, 0, 6); lcd.drawChar(x+1, 0, 6);
lcd.drawChar(x+7, 0, 7); lcd.drawChar(x+8, 0, 7);
lcd.drawRectangle(x+8, 0); lcd.drawRectangle(x+9, 0);
lcd.drawRectangle(x, 5); lcd.drawRectangle(x, 5);
lcd.drawRectangle(x+1, 1); lcd.drawRectangle(x+1, 1);
lcd.drawRectangle(x+7, 1);
lcd.drawRectangle(x+8, 1); lcd.drawRectangle(x+8, 1);
lcd.drawRectangle(x+9, 1);
} }
void Face::drawLove() { void Face::drawLove() {
//lcd.clear();
lcd.drawChar(x, 0, 2); lcd.drawChar(x, 0, 2);
lcd.drawChar(x+1, 0, 3); lcd.drawChar(x+1, 0, 3);
lcd.drawChar(x, 1, 4); lcd.drawChar(x, 1, 4);
lcd.drawChar(x+1, 1, 5); lcd.drawChar(x+1, 1, 5);
lcd.drawChar(x+7, 0, 2); lcd.drawChar(x+8, 0, 2);
lcd.drawChar(x+8, 0, 3); lcd.drawChar(x+9, 0, 3);
lcd.drawChar(x+7, 1, 4); lcd.drawChar(x+8, 1, 4);
lcd.drawChar(x+8, 1, 5); lcd.drawChar(x+9, 1, 5);
} }

View File

@ -27,9 +27,9 @@ void loop() {
if (Serial.available() > 0) { if (Serial.available() > 0) {
char c = Serial.read(); char c = Serial.read();
if (c != last && c >= '0' && c <= '5') if (c != last && c >= '1' && c <= '5')
lcd.clear(); lcd.clear();
if (c <= '0' || c >= '5') // repeat if (c < '1' || c > '5') // repeat
c = last; c = last;
else else
last = c; last = c;