Library for fingerprint R503 Adaptation from Arduino Library
This a library and demo for fingerprint R503
For datasheet, see here -> https://cdn-shop.adafruit.com/product-files/4651/4651_R503%20fingerprint%20module%20user%20manual.pdf
This is an adaptation of Adafruit library (Arduino) to ARM MBED, tested on NUCLEO L073RZ
For this exemple default connexions on NUCLEOL073RZ are :
TX <-> PC_0
RX <-> PC_1
WAKEUP <-> PB_0 , this is an Interrupt , you must connect a pull-up resistor (4K to 15k) between WAKEUP and DC3.3v
Power Supply 3.3v on Arduino connector
3.3VT : 5v on Arduino connector
IMPORTANT !!! There ara yet some bugs with communications UART
Diff: main.cpp
- Revision:
- 6:b2f55a604fbe
- Parent:
- 5:022e24a51359
- Child:
- 7:afa17a46252b
--- a/main.cpp Tue Mar 16 16:33:34 2021 +0000 +++ b/main.cpp Wed Mar 17 14:14:55 2021 +0000 @@ -44,12 +44,12 @@ pc.printf("Reading sensor parameters"); finger.getParameters(); pc.printf("Status: 0x%X\n",finger.status_reg); - pc.printf("Sys ID: 0x%X\n",system_id); - pc.printf("Capacity: %d\n",capacity); - pc.printf("Security level: %d\n",security_level); - pc.printf("Device address: 0x%X\n",device_addr); - pc.printf("Packet len: %d\n",packet_len); - pc.printf("Baud rate: %d\n",baud_rate); + pc.printf("Sys ID: 0x%X\n",finger.system_id); + pc.printf("Capacity: %d\n",finger.capacity); + pc.printf("Security level: %d\n",finger.security_level); + pc.printf("Device address: 0x%X\n",finger.device_addr); + pc.printf("Packet len: %d\n",finger.packet_len); + pc.printf("Baud rate: %d\n",finger.baud_rate); finger.getTemplateCount(); @@ -58,21 +58,10 @@ } else { pc.printf("Waiting for valid finger..."); - pc.printf("Sensor contains "); pc.printfinger.templateCount); pc.printf(" templates"); + pc.printf("Sensor contains : %d templates\n",finger.templateCount); } } -int main(void) // run over and over again -{ - setup(); - while(1) - { - getFingerprintID(); - wait_ms(50); //don't ned to run this at full speed. - } - return 0; -} - uint8_t getFingerprintID() { uint8_t p = finger.getImage(); switch (p) { @@ -133,8 +122,8 @@ } // found a match! - pc.printf("Found ID #"); pc.printfinger.fingerID); - pc.printf(" with confidence of "); pc.printfinger.confidence); + pc.printf("Found ID #%d\n",finger.fingerID); + pc.printf(" with confidence of %d\n",finger.confidence); return finger.fingerID; } @@ -151,7 +140,19 @@ if (p != FINGERPRINT_OK) return -1; // found a match! - pc.printf("Found ID #"); pc.printfinger.fingerID); - pc.printf(" with confidence of "); pc.printfinger.confidence); + pc.printf("Found ID #%d\n",finger.fingerID); + pc.printf(" with confidence of %d\n",finger.confidence); return finger.fingerID; -} \ No newline at end of file +} + +int main(void) // run over and over again +{ + setup(); + while(1) + { + getFingerprintID(); + wait_ms(50); //don't ned to run this at full speed. + } + return 0; +} +