Fingerprint Scanner API using GT511C3 fingerprint scanner.

Dependencies:   4DGL-uLCD-SE GT511C3 SDFileSystem mbed

Fork of GT511C3test by Toshihisa T

The fingerprint scanner is designed to take attendance over a group of students. It requires a the group owner to store a preloaded list of student id numbers in a .txt file to the memory (SD card) in return of a 5 digits keypass to gain access to the database when taking attendance.

While there may exist multiple group owner and a group owner with multiple databases, each group will be uniquely identified by the 5 digits keypass. The program limits each scanner to open ONE session at a time where only one group will be able to take attendance during its session. Once a session is closed, a report of the attendance taken during the open session is generated and sent via ethernet to owner and there is no way to reopen the session again.

For the initial setup, each fingerprint database needs to be populated by the students. This set up can be done continuously during a session while taking attendance that session.

Committer:
tosihisa
Date:
Fri Jan 03 06:20:34 2014 +0000
Revision:
0:b11b455d4997
Child:
1:4a1be9379e92
1st Commit.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
tosihisa 0:b11b455d4997 1 #include "mbed.h"
tosihisa 0:b11b455d4997 2 #include "GT511C3.h"
tosihisa 0:b11b455d4997 3
tosihisa 0:b11b455d4997 4 Serial debug(USBTX,USBRX);
tosihisa 0:b11b455d4997 5
tosihisa 0:b11b455d4997 6 DigitalOut myled(LED1);
tosihisa 0:b11b455d4997 7 GT511C3 finger(p28,p27);
tosihisa 0:b11b455d4997 8
tosihisa 0:b11b455d4997 9 int main() {
tosihisa 0:b11b455d4997 10 unsigned long Parameter;
tosihisa 0:b11b455d4997 11 unsigned short Response;
tosihisa 0:b11b455d4997 12 int sts = 0;
tosihisa 0:b11b455d4997 13
tosihisa 0:b11b455d4997 14 debug.format(8,Serial::None,1);
tosihisa 0:b11b455d4997 15 debug.baud(115200);
tosihisa 0:b11b455d4997 16
tosihisa 0:b11b455d4997 17 debug.printf("Init\n");
tosihisa 0:b11b455d4997 18 finger.Init();
tosihisa 0:b11b455d4997 19 debug.printf("Open\n");
tosihisa 0:b11b455d4997 20 finger.SendCommand(0,GT511C3::CMD_Open);
tosihisa 0:b11b455d4997 21 sts = finger.RecvResponse(&Parameter,&Response);
tosihisa 0:b11b455d4997 22 debug.printf("sts = %d,Response=0x%04x\n",sts,Response);
tosihisa 0:b11b455d4997 23
tosihisa 0:b11b455d4997 24 while(1) {
tosihisa 0:b11b455d4997 25 myled = 1;
tosihisa 0:b11b455d4997 26 wait(0.2);
tosihisa 0:b11b455d4997 27 myled = 0;
tosihisa 0:b11b455d4997 28 wait(0.2);
tosihisa 0:b11b455d4997 29 }
tosihisa 0:b11b455d4997 30 }