#include <LiquidCrystal_I2C.h>
#include <Adafruit_NeoPixel.h>
#include <Servo.h>
LiquidCrystal_I2C myLCD(0x27, 20, 4); // declaració de la pantalla LCD
Adafruit_NeoPixel myNEO(16, 5); // declaració de l'anella Pixels
Servo serv1;
int sPos=90; // calor de la posició del servo
#define joyH A0
#define joyV A1
#define joyB 4 // botó del joystick
int v_joyH, v_joyV; // valors del joystick
void setup() {
pinMode(joyB, INPUT_PULLUP);
myLCD.init();
myLCD.setCursor(2, 0);
myLCD.print("Adrian Gay");
myNEO.begin();
myNEO.setPixelColor(0, 255, 0, 0);
myNEO.show();
serv1.attach(11);
serv1.write(sPos);
}
void loop(){
v_joyH = analogRead(joyH);
v_joyV = analogRead(joyV);
myLCD.clear();
myLCD.setCursor(2, 0);
myLCD.print("Adrian Gay");
myLCD.setCursor(2, 1);
myLCD.print("Adrian Gay");
myLCD.setCursor(2,2);
myLCD.print("Adrian Gay");
if(v_joyH<512){
for(int i=0; i<16; i++){
myNEO.setPixelColor(i, 31, 255, random(250));
}
myNEO.show();
}
else if(v_joyH == 512){
for(int i=0; i<16; i++){
myNEO.setPixelColor(i, 288, 0, 255);
}
myNEO.show();
}
else{
for(int i=0; i<16; i++){
myNEO.setPixelColor(i, random(255), 0, 0);
}
myNEO.show();
}
delay(5000);
}