Fingerprint sensor example with WIZwiki-W7500. 1st release.

Dependencies:   GT511C3 mbed-src

Fork of GT511C3test by Toshihisa T

Committer:
hjjeon
Date:
Thu Jul 30 00:46:05 2015 +0000
Revision:
9:9becf9ddb86e
Parent:
8:574087f87b1e
Fingerprint sensor example with WIZwiki-W7500.; 1st release.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tosihisa 0:b11b455d4997 1 #include "mbed.h"
tosihisa 6:016ad8f480d3 2 #include "GT511C3.hpp"
tosihisa 0:b11b455d4997 3
hjjeon 8:574087f87b1e 4 #define MAX_ID_NUM 20
hjjeon 8:574087f87b1e 5
tosihisa 0:b11b455d4997 6 Serial debug(USBTX,USBRX);
tosihisa 0:b11b455d4997 7
hjjeon 8:574087f87b1e 8
hjjeon 8:574087f87b1e 9 #ifdef TARGET_WIZWIKI_W7500
hjjeon 8:574087f87b1e 10 GT511C3 finger(PA_13,PA_14);
hjjeon 8:574087f87b1e 11 DigitalIn del_ID(D7);
hjjeon 8:574087f87b1e 12 DigitalIn enroll_ID(D8);
hjjeon 8:574087f87b1e 13 #endif
tosihisa 0:b11b455d4997 14
tosihisa 5:d3ebe6d1ed92 15 int progress(int status,char *msg)
tosihisa 2:34a647292050 16 {
tosihisa 5:d3ebe6d1ed92 17 debug.printf("%s",msg);
tosihisa 3:459a4f985a45 18 return 0;
tosihisa 2:34a647292050 19 }
tosihisa 2:34a647292050 20
hjjeon 8:574087f87b1e 21 int main()
hjjeon 8:574087f87b1e 22 {
tosihisa 0:b11b455d4997 23 int sts = 0;
tosihisa 4:3dd0f98e6f09 24 int ID = 0;
hjjeon 8:574087f87b1e 25 int cnt = 0;
hjjeon 8:574087f87b1e 26 int EnrollID;
tosihisa 7:8b9ef3211cd0 27
hjjeon 8:574087f87b1e 28 debug.baud(115200);
hjjeon 8:574087f87b1e 29 printf("Try to Open Device....\r\n");
hjjeon 8:574087f87b1e 30
hjjeon 8:574087f87b1e 31 while(1)
hjjeon 8:574087f87b1e 32 {
hjjeon 8:574087f87b1e 33 sts = finger.Open();
hjjeon 8:574087f87b1e 34 if(sts == -1)
hjjeon 8:574087f87b1e 35 {
hjjeon 8:574087f87b1e 36 printf("Open failed!!\r\n");
hjjeon 8:574087f87b1e 37 cnt++;
hjjeon 8:574087f87b1e 38 while(cnt > 5);
hjjeon 8:574087f87b1e 39 }
hjjeon 8:574087f87b1e 40 else
hjjeon 8:574087f87b1e 41 {
hjjeon 8:574087f87b1e 42 printf("Open Success!!\r\n");
hjjeon 8:574087f87b1e 43 break;
tosihisa 4:3dd0f98e6f09 44 }
hjjeon 8:574087f87b1e 45 wait(0.2);
hjjeon 8:574087f87b1e 46 }
hjjeon 8:574087f87b1e 47
hjjeon 8:574087f87b1e 48 if(del_ID == 1)
hjjeon 8:574087f87b1e 49 {
hjjeon 8:574087f87b1e 50 finger.DeleteID_All();
hjjeon 8:574087f87b1e 51 printf("All ID are deleted!!\r\n");
tosihisa 4:3dd0f98e6f09 52 }
hjjeon 8:574087f87b1e 53
hjjeon 8:574087f87b1e 54 cnt = 0;
hjjeon 8:574087f87b1e 55 if(enroll_ID == 1)
hjjeon 8:574087f87b1e 56 {
hjjeon 8:574087f87b1e 57 while(1)
hjjeon 8:574087f87b1e 58 {
hjjeon 8:574087f87b1e 59 if(finger.CheckEnrolled(cnt) == -1)
hjjeon 8:574087f87b1e 60 {
hjjeon 8:574087f87b1e 61 EnrollID = cnt;
hjjeon 8:574087f87b1e 62 printf("ID(%d) is empty\r\n", EnrollID);
hjjeon 8:574087f87b1e 63 break;
hjjeon 8:574087f87b1e 64 }
hjjeon 8:574087f87b1e 65 cnt++;
hjjeon 8:574087f87b1e 66 if(cnt > MAX_ID_NUM)
hjjeon 8:574087f87b1e 67 {
hjjeon 8:574087f87b1e 68 printf("\r\nERROR : ID number is fulled!!Delete ID first!!\r\n\r\n");
hjjeon 8:574087f87b1e 69 while(1);
tosihisa 6:016ad8f480d3 70 }
tosihisa 6:016ad8f480d3 71 }
tosihisa 6:016ad8f480d3 72 finger.Enroll(EnrollID,progress);
tosihisa 3:459a4f985a45 73 }
hjjeon 8:574087f87b1e 74
tosihisa 3:459a4f985a45 75 finger.CmosLed(1);
hjjeon 8:574087f87b1e 76
hjjeon 8:574087f87b1e 77 while(1)
hjjeon 8:574087f87b1e 78 {
hjjeon 8:574087f87b1e 79 printf("Press finger for Identify\r\n");
tosihisa 5:d3ebe6d1ed92 80 finger.WaitPress(1);
tosihisa 5:d3ebe6d1ed92 81 if(finger.Capture(1) != 0)
tosihisa 5:d3ebe6d1ed92 82 continue;
hjjeon 8:574087f87b1e 83
tosihisa 5:d3ebe6d1ed92 84 ID = finger.Identify();
hjjeon 8:574087f87b1e 85
hjjeon 8:574087f87b1e 86 if(ID == -1)
hjjeon 8:574087f87b1e 87 printf("\r\nERROR : There is no ID!!Enroll first!!\r\n\r\n");
hjjeon 8:574087f87b1e 88 else
hjjeon 8:574087f87b1e 89 printf("ID = %d\r\n",ID);
hjjeon 8:574087f87b1e 90
hjjeon 8:574087f87b1e 91 printf("Remove finger\r\n");
tosihisa 5:d3ebe6d1ed92 92 finger.WaitPress(0);
hjjeon 8:574087f87b1e 93
tosihisa 0:b11b455d4997 94 }
hjjeon 8:574087f87b1e 95
hjjeon 8:574087f87b1e 96
tosihisa 0:b11b455d4997 97 }
hjjeon 8:574087f87b1e 98