#include "RoboCodeFingerprint.h" // ПІДКЛЮЧАЄМО БІБІЛІОТЕКУ
RoboCodeFingerprint fp = RoboCodeFingerprint(13,12);
// в дужки пишимо номер Tx і Rx сканера пальців
int rPin = 7; // ніжка до якої підключений червоний світлодіодик
int gPin = 6; // ніжка до якої підключений зелений світлодіодик
int bPin = 5; // ніжка до якої підключений бакитний світлодіодик
int gndPin = 4; // ніжка до якої підключена земля трьох світлодіодиків
int id = 0;
void setup(){
Serial.begin(9600);
fp.begin(57600); // швидкість спілкування модулю відбитків
pinMode(rPin, OUTPUT); // налаштування режиму ніжки червоного LED на вихід
pinMode(gPin, OUTPUT); // налаштування режиму ніжки pелений LED на вихід
pinMode(bPin, OUTPUT); // налаштування режиму ніжки синій LED на вихід
pinMode(gndPin, OUTPUT);
rgb(1,0,1);
Serial.println("id="); //в користувача запитаємо номер пальчика 1-10
delay(2000); // затрамка 2 секунди, щоб встигнути написати номер пальчика
id = Serial.parseInt(); // прочитати від користувача номер і збергти
if(id)fp.writeNewFinger(id);// якщо користувач ввів номер, то сфоткати пальчик
else Serial.println("end writeNewFinger, start scan");
}
void loop(){
id = fp.getFingerID(); // Прочитати пальчик
if(id>=0){ // Якщо був приклaдений пальчик
Serial.println("id="+String(id));// Вивести номер пальчика
if(id==0) rgb(1,0,0); // якщо номер пальчика 0, не знайдено, вмикамо червоний
if(id==2) rgb(0,1,0); // якщо номер пальчика 1, вмикамо зелений
if(id==2) rgb(0,0,1); // якщо номер пальчика 2, вмикамо синій
}
}
void rgb(bool r, bool g, bool b){
digitalWrite(7, r);
digitalWrite(6, g);
digitalWrite(5, b);
}
// id =-1 тоді палець не було прикладено
// id = 0 тоді палець не було знайдено
// id =>1 тоді палець було знайдено під номером id
// Finger - палець
// Print - відбиток в нашому випадку
// Tx-transmit - передати
// Rx-resive - отримати
// parseInt - прочитати (розібрати) ineger (ціле число)