1#include <Keyboard.h>
2#include <Adafruit_Fingerprint.h>
3#include <SoftwareSerial.h>
4int getFingerprintIDez();
5int lecturaSet1;
6int lecturaSet2;
7int set1 = 2;
8int set2 = 3;
9int buzzer = 13;
10SoftwareSerial mySerial(8, 9);
11Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);
12void setup()
13{
14 pinMode(buzzer, OUTPUT);
15 pinMode(set1, INPUT_PULLUP);
16 pinMode(set2, INPUT_PULLUP);
17 Serial.begin(9600);
18 Serial.println("Prueba de detección de fingerprint");
19 finger.begin(57600);
20 if (finger.verifyPassword()) {
21 Serial.println("¡Sensor de huellas dactilares encontrado!");
22 } else {
23 Serial.println("Sensor de huellas dactilares no encontrado:(");
24 while (1);
25 }
26 Serial.println("Esperando una huella válida...");
27}
28void loop()
29{
30 getFingerprintIDez();
31 delay(500);
32 lecturaSet1 = digitalRead(set1);
33 lecturaSet2 = digitalRead(set2);
34 if(lecturaSet1 == LOW){
35 Keyboard.print("password");
36 Keyboard.press(KEY_RETURN);
37 Keyboard.releaseAll();
38 bip();
39 }
40 if(lecturaSet2 == LOW){
41 Keyboard.print("password");
42 Keyboard.press(KEY_RETURN);
43 Keyboard.releaseAll();
44 bip();
45 }
46}
47
48int getFingerprintIDez() {
49 uint8_t p = finger.getImage();
50 if (p != FINGERPRINT_OK) return -1;
51 p = finger.image2Tz();
52 if (p != FINGERPRINT_OK) return -1;
53 p = finger.fingerFastSearch();
54 if (p != FINGERPRINT_OK) return -1;
55
56 Serial.print("Huella ID #"); Serial.print(finger.fingerID);
57 Serial.print(" con confianza de "); Serial.println(finger.confidence);
58 bip();
59if(finger.fingerID == 1){
60 Keyboard.print("password");
61 Keyboard.press(KEY_RETURN);
62 Keyboard.releaseAll();
63 }
64if(finger.fingerID == 2){
65 Keyboard.print("usuario");
66 Keyboard.press(KEY_TAB);
67 Keyboard.print("password");
68 Keyboard.press(KEY_RETURN);
69 Keyboard.releaseAll();
70 }
71if(finger.fingerID == 3){
72 Keyboard.print("password");
73 Keyboard.press(KEY_RETURN);
74 Keyboard.releaseAll();
75 }
76if(finger.fingerID == 4){
77 Keyboard.print("prueba 4");
78 }
79if(finger.fingerID == 5){
80 Keyboard.print("prueba 5");
81 }
82 return finger.fingerID;
83}
84void bip (){
85 digitalWrite(buzzer, HIGH);
86 delay(100);
87 digitalWrite(buzzer, LOW);
88 }