const int ledVerde = 27;
const int ledVermelho = 14;
const int ledRosa = 26;
const int ledAzul = 25;
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#define SDA 21
#define SCL 19
LiquidCrystal_I2C lcd(0x27,16,4);
// Defina os pinos utilizados para o joystick
const int pinJoystickX = 34;
const int pinJoystickY = 35;
void setup() {
// Inicialize os pinos dos LEDs como saída
pinMode(ledVerde, OUTPUT);
pinMode(ledVermelho, OUTPUT);
pinMode(ledRosa, OUTPUT);
pinMode(ledAzul, OUTPUT);
// Inicialize os pinos do joystick como entrada
pinMode(pinJoystickX, INPUT);
pinMode(pinJoystickY, INPUT);
// Ative a comunicação serial
Wire.begin(SDA, SCL);
lcd.init();
lcd.backlight();
lcd.setCursor(0,0);
lcd.print(" LED VERDE: ");
lcd.setCursor(0,1);
lcd.print(" LED AZUL:");
lcd.setCursor(0,2);
lcd.print(" LED VERMELHO: ");
lcd.setCursor(0,3);
lcd.print(" LED ROSA: ");
}
void loop() {
// Leia os valores dos pinos do joystick
int valorX = analogRead(pinJoystickX);
int valorY = analogRead(pinJoystickY);
// Verifique a posição do joystick e acenda o LED correspondente
if (valorY < 2048) { // Joystick para cima
digitalWrite(ledVerde, LOW);
digitalWrite(ledVermelho, HIGH);
digitalWrite(ledRosa, LOW);
digitalWrite(ledAzul, LOW);
lcd.setCursor(14,2);
lcd.print("on "); // Exibe a mensagem no LCD
} else {
digitalWrite(ledVermelho, LOW); // Desliga o LED
lcd.setCursor(14,2);
lcd.print("off");
}
if (valorY > 2048) { // Joystick para cima
digitalWrite(ledVerde, HIGH);
digitalWrite(ledVermelho, LOW);
digitalWrite(ledRosa, LOW);
digitalWrite(ledAzul, LOW);
lcd.setCursor(11,0);
lcd.print("on "); // Exibe a mensagem no LCD
} else {
digitalWrite(ledVerde, LOW); // Desliga o LED
lcd.setCursor(11,0);
lcd.print("off");
}
if (valorX < 2048) { // Joystick para cima
digitalWrite(ledVerde, LOW);
digitalWrite(ledVermelho, LOW);
digitalWrite(ledRosa, HIGH);
digitalWrite(ledAzul, LOW);
lcd.setCursor(10,3);
lcd.print("on "); // Exibe a mensagem no LCD
} else {
digitalWrite(ledRosa, LOW); // Desliga o LED
lcd.setCursor(10,3);
lcd.print("off");
}
if (valorX > 2048) { // Joystick para cima
digitalWrite(ledVerde, LOW);
digitalWrite(ledVermelho, LOW);
digitalWrite(ledRosa, LOW);
digitalWrite(ledAzul, HIGH);
lcd.setCursor(10,1);
lcd.print("on "); // Exibe a mensagem no LCD
} else {
digitalWrite(ledAzul, LOW); // Desliga o LED
lcd.setCursor(10,1);
lcd.print("off");
}
}