#include <Adafruit_SSD1306.h>
#include <Adafruit_GFX.h>
#include <Wire.h>
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1);
// botones
const int primerboton = 2;
const int segundoboton = 3;
int x = 0 ;
int y = 0 ;
void setup() {
// Iniciamos el puerto seria
Serial.begin(9600);
// decalraciones de los botones
pinMode(primerboton, INPUT_PULLUP);
pinMode(segundoboton, INPUT_PULLUP);
if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) {
Serial.println("No se pudo iniciar la pantalla OLED");
for(;;);
}
obstaculo();
delay(1000);
}
void loop() {
// Aquí puedes poner el código principal que se repetirá
int lecturaboton1 = digitalRead(primerboton);
int lecturaboton2 = digitalRead(segundoboton);
if(lecturaboton1 == 1){
x++;
saludo( x,y);
}
else if(lecturaboton2 == 1){
y++;
saludo( x,y);
}
/*
el primer parametro en la funcion saludo
es el primer parametro es la posicion y
el ultimo aprametro es la posicion x
*/
}
void saludo( int y , int x) {
Serial.print("posicion x = ");
Serial.println(x);
Serial.print("posicion y = ");
Serial.println(y);
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(SSD1306_WHITE);
display.setCursor(x, y);
display.print("x");
display.display();
}
void obstaculo(){
display.clearDisplay();
display.setTextSize(2);
display.setTextColor(SSD1306_WHITE);
display.setCursor(20,20);
display.print("-");
display.display();
}