Buen dia a todos espero puedan ayudarme me surgio este error en un programa que realice pero lo curioso es que el problema anteriormente no me daba problemas, expongo lo que aparece:
Arduino:1.6.9 (Windows 10), Tarjeta:"Arduino/Genuino Uno"
La Librería no puede usar ambas carpetas 'src' y 'utilidad'. Doble marcado C:\Users\jagua_000\Arduino\libraries\Keypad
Se encontraron múltiples librerías para "LiquidCrystal_I2C.h"
Usado: C:\Users\jagua_000\Arduino\libraries\LiquidCrystal_I2C
No usado: C:\Users\jagua_000\Arduino\libraries\arduino_649337
Se encontraron múltiples librerías para "Servo.h"
Usado: C:\Users\jagua_000\Arduino\libraries\Servo
No usado: C:\Users\jagua_000\arduino-1.6.9\libraries\Servo
Error compilación en tarjeta Arduino/Genuino Uno.
Este reporte podría tener más información con
"Mostrar salida detallada durante la compilación"
opción habilitada en Archivo -> Preferencias.
y el código es el siguiente
#include <LiquidCrystal_I2C.h>
#include <Wire.h>
#include <Key.h>
#include <Keypad.h>
#include <Servo.h>
#include <EEPROM.h>
int comp (char v[]);
void warning();
void newcontrasena();
const byte filas= 4;
const byte columnas= 4;
char keys[filas][columnas]= {
{'1','2','3','A'},
{'4','5','6','B'},
{'7','8','9','C'},
{'*','0','#','D'}
};
byte filaspins[filas]= {9,8,7,6};
byte columnaspins[columnas]= {5,4,3,2};
Keypad teclado= Keypad(makeKeymap(keys), filaspins, columnaspins, filas, columnas);
LiquidCrystal_I2C lcd(0x27,16,2);
Servo cerradura;
char pass1[]= {'1','2','3','4'};
char pass2[5];
char aux;
void setup() {
lcd.begin(16,2);
lcd.init();
lcd.backlight();
cerradura.attach(11);
Serial.begin(9600);
/* for (int i=0; i < 4; i++) {
EEPROM.write(i, pass1);
}*/
for (int j= 0; j < 4; j++) {
pass1[j]= EEPROM.read(j);
}
}
void loop() {
int i=0, j=0, f=0, a=0, k=0;
cerradura.write(90);
lcd.setCursor(4,0);
lcd.print("*CERRADO*");
aux= teclado.getKey();
if (aux != NO_KEY) {
switch(aux) {
case 'A':
while (f < 3 && aux != 'D') {
lcd.clear();
lcd.setCursor(0,0);
lcd.print("Ingrese clave");
lcd.setCursor(6,1);
for (j=0; j < 4; j++) {
pass2[j]= teclado.waitForKey();
lcd.print("*");
delay(100);
}
a = comp(pass2);
switch(a) {
case 4:
lcd.clear();
lcd.setCursor(1,0);
lcd.print("CLAVE CORRECTA");
digitalWrite(10,HIGH);
aux= teclado.waitForKey();
lcd.clear();
if (aux == 'D') {
lcd.clear();
lcd.setCursor(0,1);
lcd.print("ACCESO PERMITIDO");
cerradura.write(15);
delay(7000);
digitalWrite(10,LOW);
lcd.clear();
}
break;
}
if ( a < 4) {
lcd.clear();
lcd.setCursor(1,0);
lcd.print("ERROR DE CODIGO");
lcd.setCursor(0,1);
lcd.print("INTENTE DE NUEVO");
f++;
delay(1000);
lcd.clear();
}
}
break;
case 'C':
newcontrasena();
break;
}
}
if (f == 3) {
warning();
}
}
int comp (char v[]) {
int k=0,w=0;
for (k=0; k < 4; k++) {
if (pass1[k] == v[k]) {
w++;
}
}
return w;
}
void newcontrasena () {
int x=0,j;
lcd.setCursor(0,0);
lcd.print("Anterior Clave");
lcd.setCursor(6,1);
for (j=0; j < 4; j++) {
pass2[j] = teclado.waitForKey();
lcd.print("*");
delay(100);
}
x= comp(pass2);
if (x== 4) {
lcd.clear();
lcd.setCursor(1,0);
lcd.print("Nueva Clave");
lcd.setCursor(6,1);
for (int i=0; i < 4; i++) {
pass1= teclado.waitForKey();
lcd.print("*");
EEPROM.write(i, pass1);
delay(100);
}
lcd.clear();
}
else {
lcd.clear();
lcd.setCursor(1,0);
lcd.print("ERROR DE CODIGO");
lcd.setCursor(0,1);
lcd.print("INTENTE DE NUEVO");
lcd.clear();
delay(1000);
}
}
void warning () {
lcd.setCursor(4,0);
lcd.print("Alerta ");
digitalWrite(13, HIGH);
digitalWrite(12, HIGH);
delay(30000);
digitalWrite(13, LOW);
digitalWrite(12,LOW);
}
quisiera saber como solucionar este problema y desde ya agradezco cualquier ayuda que me puedan brindar