#include <LiquidCrystal.h>
#define Push 13
#define Push2 19
//#define buzzer 26
//int PushStatus = 0;
//int lastPush2Status = 0;
//int Tiempo = 0;
LiquidCrystal lcd(12, 11, 10, 9, 8, 7); // RS, E, D4, D5, D6, D7
uint8_t C0[8]={0x1A,0x18,0x02,0x14,0x00,0x00,0x00,0x00};//Sol
uint8_t C1[8]={0x07,0x15,0x17,0x16,0x1F,0x1E,0x02,0x03};//Dino1
uint8_t C2[8]={0x07,0x15,0x17,0x16,0x1F,0x1E,0x08,0x0C};//Dino2
uint8_t C3[8]={0x00,0x00,0x04,0x04,0x05,0x07,0x04,0x04};//Piedra
uint8_t C4[8]={0x04,0x04,0x05,0x07,0x14,0x1C,0x04,0x04};//Cactus1
uint8_t C5[8]={0x00,0x00,0x00,0x00,0x00,0x04,0x0E,0x1F};//Cactus2
uint8_t C6[8]={0x00,0x06,0x0F,0x09,0x09,0x0F,0x09,0x09};//Montaña1
uint8_t C7[8]={0x00,0x00,0x0E,0x1F,0x0E,0x00,0x00,0x00};//Nube
void setup() {
lcd.begin(16, 2);
pinMode(Push, INPUT);
pinMode(Push2, INPUT);
//pinMode(buzzer, OUTPUT);
lcd.createChar(0, C0);
lcd.createChar(1, C1);
lcd.createChar(2, C2);
lcd.createChar(3, C3);
lcd.createChar(4, C4);
lcd.createChar(5, C5);
lcd.createChar(6, C6);
lcd.createChar(7, C7);
lcd.home();
pinMode(Push, INPUT_PULLUP);
lcd.begin(16, 2);
lcd.print(" ANDY GAME'S");
lcd.setCursor(0, 1);
lcd.print(" GO!!");
delay(2000);
//lcd.clear();
}
void loop(){
// put your main code here, to run repeatedly:
lcd.clear();
lcd.setCursor(2, 0);
lcd.print("Push Button");
while(digitalRead(Push) == 1);
delay(100);
lcd.clear();
int cactus = 15;
int nube = 17;
//int points = 0;
while(1){
lcd.clear(); //Limpio la pantalla para insertar el sol (C0= Sol)
lcd.setCursor(0, 0);//Indico la posicion del sol
lcd.write((byte) 0);
if(digitalRead(Push2) == 0){
lcd.setCursor(2,1);
lcd.print(" ");
lcd.setCursor(2,0);
lcd.write((byte) 1);
lcd.setCursor(cactus, 1);
lcd.write((byte) 4);
delay(150);
lcd.setCursor(2,0);
lcd.write((byte) 2);
lcd.setCursor(cactus, 1);
lcd.print(" ");
delay(150);
cactus -= 1;
if(cactus < 0){
cactus = 15;
}
}else{
lcd.setCursor(2,0);
lcd.print(" ");
lcd.setCursor(2,1);
lcd.write((byte) 1);
lcd.setCursor(cactus, 1);
lcd.write((byte) 4);
delay(150);
lcd.setCursor(2,1);
lcd.write((byte) 2);
lcd.setCursor(cactus, 1);
lcd.print(" ");
delay(150);
cactus -= 1;
if(cactus < 0){
cactus = 15;
}
if(cactus == 2){
lcd.clear();
lcd.setCursor(2,1);
lcd.write((byte) 6);
delay(500);
lcd.clear();
lcd.setCursor(3,0);
lcd.print("GAME OVER");
delay(200);
break;
}
}
}
}
Loading
pi-pico-w
pi-pico-w