Tutorial Fingerprint Doorlock Arduino – Membuka Kunci Pintu Dengan Sidik Jar
Download zip library (github)
#include "Adafruit_Fingerprint.h"#include "SoftwareSerial.h"SoftwareSerial mySerial(2, 3);Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);byte sensorsentuh = 4;int nilaisensor;byte irf = 5;int idFinger;void setup() {Serial.begin(9600);finger.begin(57600);pinMode(sensorsentuh, INPUT);pinMode(irf, OUTPUT);if (finger.verifyPassword()) {Serial.println("FingerPrint Sensor Ditemukan!");} else {Serial.println("FingerPrint Sensor Tidak Ditemukan! :(");while (1) {delay(1);}}}void loop() {FINGERPRINT();nilaisensor = digitalRead(sensorsentuh);Serial.println(nilaisensor);if (idFinger >= 0) {digitalWrite(irf, HIGH);delay(5000);digitalWrite(irf, LOW);}if (nilaisensor == 1) {digitalWrite(irf, HIGH);delay(5000);digitalWrite(irf, LOW);}}void FINGERPRINT() {idFinger = getFingerprintIDez();delay(50);}uint8_t getFingerprintID() {uint8_t p = finger.getImage();switch (p) {case FINGERPRINT_OK:Serial.println("Image taken");break;case FINGERPRINT_NOFINGER:Serial.println("No finger detected");return p;case FINGERPRINT_PACKETRECIEVEERR:Serial.println("Communication error");return p;case FINGERPRINT_IMAGEFAIL:Serial.println("Imaging error");return p;default:Serial.println("Unknown error");return p;}p = finger.image2Tz();switch (p) {case FINGERPRINT_OK:Serial.println("Image converted");break;case FINGERPRINT_IMAGEMESS:Serial.println("Image too messy");return p;case FINGERPRINT_PACKETRECIEVEERR:Serial.println("Communication error");return p;case FINGERPRINT_FEATUREFAIL:Serial.println("Could not find fingerprint features");return p;case FINGERPRINT_INVALIDIMAGE:Serial.println("Could not find fingerprint features");return p;default:Serial.println("Unknown error");return p;}p = finger.fingerFastSearch();if (p == FINGERPRINT_OK) {Serial.println("Found a print match!");} else if (p == FINGERPRINT_PACKETRECIEVEERR) {Serial.println("Communication error");return p;} else if (p == FINGERPRINT_NOTFOUND) {Serial.println("Did not find a match");return p;} else {Serial.println("Unknown error");return p;}Serial.print("Found ID #"); Serial.print(finger.fingerID);Serial.print(" with confidence of "); Serial.println(finger.confidence);return finger.fingerID;}// returns -1 if failed, otherwise returns ID #int getFingerprintIDez() {uint8_t p = finger.getImage();if (p != FINGERPRINT_OK) return -1;p = finger.image2Tz();if (p != FINGERPRINT_OK) return -1;p = finger.fingerFastSearch();if (p != FINGERPRINT_OK) return -1;// found a match!Serial.print("Found ID #"); Serial.print(finger.fingerID);Serial.print(" with confidence of "); Serial.println(finger.confidence);return finger.fingerID;}