Paso 4: código
/***************************************************
Diseñado específicamente para trabajar con el Breakout de Adafruit BMP085
---> http://www.adafruit.com/products/751
Estas pantallas utilizan TTL Serial para comunicarse, 2 pins están obligados a
interfaz de
Adafruit invierte tiempo y recursos que este código de fuente abierto,
por favor apoye Adafruit y hardware de código abierto mediante la compra de
productos de Adafruit.
Escrito por Limor Fried/Ladyada para industrias Adafruit.
La licencia BSD, todo el texto anterior debe incluirse en cualquier redistribución
Código modificado y el proyecto construido por Carrigan Luneke
****************************************************/
#include
#include
int getFingerprintIDez();
Pin #2 es del sensor (cable verde)
PIN #3 es hacia fuera de arduino (cable blanco)
MySerial SoftwareSerial (2, 3);
Adafruit_Fingerprint dedo = Adafruit_Fingerprint (& mySerial);
void setup()
{
Serial.Begin(9600);
Serial.println("fingertest");
pinMode (11, salida); LED rojo
pinMode (12, salida); LED verde
pinMode (9, salida); Garaje puente
establecer la tarifa de datos para el sensor de puerto serie
Finger.Begin(57600);
Si (finger.verifyPassword()) {}
Serial.println ("encontrado huellas dactilares sensor!");
} else {}
Serial.println ("no se encontró huella digital sensor:(");
mientras (1);
}
Serial.println ("en espera de dedo válida...");
}
void loop() / / ejecuta una y otra vez
{
getFingerprintIDez();
digitalWrite (11, alto); LED rojo de
digitalWrite (12, bajo); LED verde apagado
digitalWrite (9, bajo); Abridor de garaje no activo
}
uint8_t getFingerprintID() {}
uint8_t p = finger.getImage();
interruptor (p) {}
caso FINGERPRINT_OK:
Serial.println ("imagen");
rotura;
caso FINGERPRINT_NOFINGER:
Serial.println ("ningún dedo detectado");
devolver p;
caso FINGERPRINT_PACKETRECIEVEERR:
Serial.println ("error de comunicación");
devolver p;
caso FINGERPRINT_IMAGEFAIL:
Serial.println ("imagen error");
devolver p;
por defecto:
Serial.println ("error desconocido");
devolver p;
}
OK ¡ un éxito!
p = finger.image2Tz();
interruptor (p) {}
caso FINGERPRINT_OK:
Serial.println ("imagen convertir");
rotura;
caso FINGERPRINT_IMAGEMESS:
Serial.println ("imagen demasiado sucia");
devolver p;
caso FINGERPRINT_PACKETRECIEVEERR:
Serial.println ("error de comunicación");
devolver p;
caso FINGERPRINT_FEATUREFAIL:
Serial.println ("no pudo encontrar huellas dactilares características");
devolver p;
caso FINGERPRINT_INVALIDIMAGE:
Serial.println ("no pudo encontrar huellas dactilares características");
devolver p;
por defecto:
Serial.println ("error desconocido");
devolver p;
}
OK convertido!
p = finger.fingerFastSearch();
Si (p == FINGERPRINT_OK) {}
Serial.println ("se encuentra a un partido grabado!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {}
Serial.println ("error de comunicación");
devolver p;
} else if (p == FINGERPRINT_NOTFOUND) {}
Serial.println ("no se encontró a un partido");
devolver p;
} else {}
Serial.println ("error desconocido");
devolver p;
}
encontró a un fósforo!
Serial.Print ("encontró ID #"); Serial.Print(Finger.fingerID);
Serial.Print ("con confianza"); Serial.println(Finger.Confidence);
}
devuelve -1 si error, de lo contrario devuelve ID #
int getFingerprintIDez() {}
uint8_t p = finger.getImage();
Si (p! = FINGERPRINT_OK) devuelven -1;
p = finger.image2Tz();
Si (p! = FINGERPRINT_OK) devuelven -1;
p = finger.fingerFastSearch();
Si (p! = FINGERPRINT_OK) devuelven -1;
encontró a un fósforo!
digitalWrite (11, bajo); LED rojo apagado
digitalWrite (12, HIGH); LED verde encendido
digitalWrite (9, alto); Activo de abrepuertas de garaje
Delay(1000); Regarlas 15v durante un segundo, puede ser diferente para cada abridor
Serial.Print ("encontró ID #"); Serial.Print(Finger.fingerID);
Serial.Print ("con confianza"); Serial.println(Finger.Confidence);
volver finger.fingerID;
}