Paso 2: Cargar el bosquejo de la huella digital con el bosquejo de LCD
copia y pega los siguientes códigos que yo había modificado para dar cabida a análisis de huellas dactilares y mostrar los resultados en la pantalla LCD.
/***************************************************
Este es un bosquejo de ejemplo para nuestro sensor óptico de huella digital
Diseñado específicamente para trabajar con el Breakout de Adafruit BMP085---> http://www.adafruit.com/products/751
Estas pantallas usan TTL Serial para comunicarse, 2 pines tienen que interfaz Adafruit invierte tiempo y recursos esto abren el código fuente, por favor ayuda 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 *** /
/ *** MODIFICADO por PELEGREN de bedRoonics laboratorios *** /
/ *** ESCÁNER de huellas digitales de ARDUINO con monitor de LCD de 16 x 2 *** /
#include
#include
#include
#include
int getFingerprintIDez();
Pin #2 es del sensor (cable verde)
PIN #3 es hacia fuera de arduino (cable blanco)
MySerial SoftwareSerial (2, 3);
LiquidCrystal lcd (9, 8, 7, 6, 5, 4); inicializar la biblioteca con los números de los pines de interfaz
Adafruit_Fingerprint dedo = Adafruit_Fingerprint (& mySerial);
void setup()
{Serial.begin(9600); / / inicializar la comunicación serial:
LCD.Begin(16,2); lcd.setCursor(0,0); LCD.Print ("Scan el dedo");
pinMode(13,OUTPUT);
pinMode(12,OUTPUT);
pinMode (11, salida);
pinMode (A0, entrada);
Finger.Begin(57600); establecer la tarifa de datos para el sensor de puerto serie}
void loop() / / ejecuta una y otra vez
{
getFingerprintID();
Delay(100);
digitalWrite (13, HIGH);
}
getFingerprintID() de uint8_t
{uint8_t p = finger.getImage();
interruptor (p)
{
caso FINGERPRINT_OK:
LCD.Clear();
LCD.Print ("imagen tomada de... ");
Delay(1000);
rotura;
caso FINGERPRINT_NOFINGER:
devolver p;
caso FINGERPRINT_PACKETRECIEVEERR:
devolver p;
caso FINGERPRINT_IMAGEFAIL:
devolver p;
por defecto:
devolver p; }
OK ¡ un éxito!
p = finger.image2Tz();
interruptor (p) {}
caso FINGERPRINT_OK:
rotura;
caso FINGERPRINT_IMAGEMESS:
devolver p;
caso FINGERPRINT_PACKETRECIEVEERR:
devolver p;
caso FINGERPRINT_FEATUREFAIL:
devolver p;
caso FINGERPRINT_INVALIDIMAGE:
devolver p;
por defecto:
devolver p; }
OK convertido!
p = finger.fingerFastSearch();
Si (p == FINGERPRINT_OK)
{
LCD.Clear();
LCD.Print ("encontrado partido!");
digitalWrite (11, alto);
Delay(1000);
digitalWrite(11,LOW); enciende LED verde para indicar partido
}
otro if(p == FINGERPRINT_NOTFOUND)
{
LCD.Clear();
lcd.setCursor(0,0);
LCD.Print ("no coincide con!");
Delay(1000);
LCD.Clear();
lcd.setCursor(0,0);
LCD.Print ("exploración dedo!");
devolver p;
}
otra cosa
{regresar p;}
IF ENCONTRÓ UN FÓSFORO...
LCD.Clear();
lcd.setCursor(0,0);
LCD.Print ("encontrado ID #");
LCD.Print(Finger.fingerID);
lcd.setCursor(0,1);
LCD.Print ("confianza");
LCD.Print(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 (13, bajo);
Delay(10);
digitalWrite (13, HIGH);
Delay(10);
LCD.Clear();
lcd.setCursor (0, 0);
LCD.Print ("encontrado ID #");
LCD.Print(Finger.fingerID);
lcd.setCursor (0, 1);
LCD.Print ("confianza");
LCD.Print(Finger.Confidence);
volver finger.fingerID;
}