Created
August 7, 2020 02:31
-
-
Save fxprime/e88a4139aa768a44fcbeed75c61860ef to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /*************************************************** | |
| This is an example sketch for our optical Fingerprint sensor | |
| Designed specifically to work with the Adafruit BMP085 Breakout | |
| ----> http://www.adafruit.com/products/751 | |
| These displays use TTL Serial to communicate, 2 pins are required to | |
| interface | |
| Adafruit invests time and resources providing this open source code, | |
| please support Adafruit and open-source hardware by purchasing | |
| products from Adafruit! | |
| Written by Limor Fried/Ladyada for Adafruit Industries. | |
| BSD license, all text above must be included in any redistribution | |
| ****************************************************/ | |
| /** | |
| www.arduinona.com | |
| ตัวอย่าง code โมดูลอ่านลายนิ้วมือ | |
| สำหรับลายนิน้วมือที่ลงทะเบียนไว้ | |
| วิธีการต่อ arduino กับ AS608 finger print module | |
| UNO/Nano -> finger print module | |
| 10 -> TX | |
| 11 -> RX | |
| VCC -> 3.3v | |
| GND -> GND | |
| */ | |
| #include <Adafruit_Fingerprint.h> | |
| SoftwareSerial mySerial(10, 11); | |
| Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial); | |
| void setup() | |
| { | |
| Serial.begin(115200); | |
| while (!Serial); // For Yun/Leo/Micro/Zero/... | |
| delay(100); | |
| Serial.println("\n\nAdafruit finger detect test"); | |
| // set the data rate for the sensor serial port | |
| finger.begin(57600); | |
| delay(5); | |
| if (finger.verifyPassword()) { | |
| Serial.println("Found fingerprint sensor!"); | |
| } else { | |
| Serial.println("Did not find fingerprint sensor :("); | |
| while (1) { | |
| delay(1); | |
| } | |
| } | |
| finger.getTemplateCount(); | |
| Serial.print("Sensor contains "); Serial.print(finger.templateCount); Serial.println(" templates"); | |
| Serial.println("Waiting for valid finger..."); | |
| } | |
| void loop() // run over and over again | |
| { | |
| getFingerprintIDez(); | |
| delay(50); //don't ned to run this at full speed. | |
| } | |
| 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; | |
| } | |
| // OK success! | |
| 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; | |
| } | |
| // OK converted! | |
| 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; | |
| } | |
| // found a match! | |
| 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; | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment