Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
lib.cpp
- Committer:
- nyengele
- Date:
- 2016-04-25
- Revision:
- 2:1b1c0502bb08
- Parent:
- 1:0e5e9821d89d
- Child:
- 3:83415d375d36
File content as of revision 2:1b1c0502bb08:
#include "mbed.h"
#include "lib.h"
int hashcode(const char *data, int size)
{
int hash = 17;
for (int i = 0; i < size; i++) {
hash += 31*hash + data[i];
}
return hash;
}
void read_mag_card(Serial *device, char *dest, int *size)
{
int pos = 0;
bool done = false;
int markercount = 0;
while (!done) {
while (!device->readable());
dest[pos] = device->getc();
if (dest[pos] == '?') markercount++;
if (markercount >= 2) done = true;
pos++;
}
*size = pos - 1;
}
bool fp_enroll(FPScanner *fp)
{
bool status = true;
fp->SetLED(true);
while(!fp->IsPressFinger()) wait(0.030);
fp->CaptureFinger(true);
if (fp->Identify1_N() == 200) {
int id = fp->GetEnrollCount();
if (fp->EnrollStart(id) == 0) {
fp->CaptureFinger(true);
fp->Enroll1();
fp->CaptureFinger(true);
fp->Enroll2();
fp->CaptureFinger(true);
fp->Enroll3();
fp->SetLED(false);
} else status = false;
} else status = false;
return status;
}
bool fp_auth(FPScanner *fp)
{
bool status = false;
fp->SetLED(true);
while(!fp->IsPressFinger()) wait(0.030);
fp->CaptureFinger(true);
if (fp->Identify1_N() != 200) status = true;
fp->SetLED(false);
return status;
}