Nextion Ekran Parmak izi sensörü ve Duman Sensörü

rizaksu06

Üye
Katılım
31 Mar 2019
Mesajlar
1
Puanları
1
Yaş
22
Merhaba okul projem için yardımınıza ihtiyacım var.

Alkol, duman ve nabız sensörlerinden değer alıp nextion ekrana aktarabiliyorum. Fakat parmak izi sensörünü bu programa dahil edemiyor.Tek başına onuda çalıştırıyorum fakat ama aynı loop döngüsüne sokunca parmak izi devreye girmiyor.Kodlar aşşağıda yazıyor.Belki yardımcı olabilcek birisi çıkar. Sorun acaba 2 adet serial port kullanmam gerek ekran için kütüphanesinde serial 2 yazıyor.Parmak izinde öyle bir kütüphane olmadığından kendim tarif ettim.


#include <Nextion.h>

#include <Adafruit_Fingerprint.h>
#include <SoftwareSerial.h>

int getFingerprintIDez();

int ledred = 8;
int ledgreen = 9;
String Names [] = { "BAHADIR" ,"222","333","444","MERT","666","777","888","RIZA"};


#define mySerial Serial3

Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

void dumannoPopCallback(void *ptr);
void alkolnoPopCallback(void *ptr);
void nabiznoPopCallback(void *ptr);

NexNumber n0 = NexNumber(2, 2, "n0");
NexNumber n1 = NexNumber(3, 3, "n1");
NexNumber n2 = NexNumber(4, 2, "n2");

uint32_t alkol = 0;
int alkolpin = A1;

uint32_t duman = 0;
int dumanpin = A0;

uint32_t nabiz = 0;
int nabizpin = A2;



void setup() {

Serial.begin(9600);
Serial.begin(9600);
dbSerialPrintln("setup begin");
nexInit();
dbSerialPrintln("setup done");

pinMode (ledred , OUTPUT);
pinMode (ledgreen , OUTPUT);


finger.begin(57600);
}



void loop() {

n0.getValue(&duman);
delay(50);

duman = analogRead(dumanpin);
duman = map(duman,0,1023,0,250);

digitalWrite(dumanpin,HIGH);
delay(50);
n0.setValue(duman);
Serial.print("n0.val");
Serial.print(duman);
Serial.write(0xff);
Serial.write(0xff);
Serial.write(0xff);
digitalWrite(dumanpin,LOW);
delay(50);


n1.getValue(&alkol);
delay(200);

alkol = analogRead(alkolpin);
alkol = map(alkol,0,1023,0,250);

digitalWrite(alkolpin,HIGH);
delay(200);
n1.setValue(alkol);
Serial.print("n1.val");
Serial.print(alkol);
Serial.write(0xff);
Serial.write(0xff);
Serial.write(0xff);
digitalWrite(alkolpin,LOW);
delay(200);



n2.getValue(&nabiz);
delay(50);

nabiz = analogRead(nabizpin);
nabiz = map(nabiz,0,1023,0,120);

digitalWrite(nabizpin,HIGH);
delay(50);
n2.setValue(nabiz);
Serial.print("n2.val");
Serial.print(nabiz);
Serial.write(0xff);
Serial.write(0xff);
Serial.write(0xff);
digitalWrite(nabizpin,LOW);
delay(50);

}



uint8_t getFingerprintID() {
uint8_t p = finger.getImage();

getFingerprintIDez();
digitalWrite( ledred , HIGH);
delay(50);
p = finger.image2Tz();


p = finger.fingerFastSearch();
if (p == FINGERPRINT_OK) {
Serial.println("Found a print match!");
} else if (p == FINGERPRINT_PACKETRECIEVEERR) {
Serial.println("Communication error");
return p;
} else if (p == FINGERPRINT_NOTFOUND) {
Serial.println("Did not find a match");
return p;
} else {
Serial.println("Unknown error");
return p;
}


Serial.print("Found ID #"); Serial.print(finger.fingerID);
Serial.print(" with confidence of "); Serial.println(finger.confidence);
}


int getFingerprintIDez() {
uint8_t p = finger.getImage();
if (p != FINGERPRINT_OK) return -1;

p = finger.image2Tz();
if (p != FINGERPRINT_OK) return -1;

p = finger.fingerFastSearch();
if (p != FINGERPRINT_OK) return -1;

digitalWrite (ledred, LOW );
digitalWrite (ledgreen , HIGH);
delay(2000);
digitalWrite (ledgreen , LOW);
delay (2000);
digitalWrite (ledred , HIGH);


Serial.print("HOSGELDIN #");

Serial.println(Names[finger.fingerID-1]);
Serial.print(" with confidence of "); Serial.println(finger.confidence);
return finger.fingerID;

}
 

Benzer konular


Sponsor Bağlantı

Forum istatistikleri

Konular
104,205
Mesajlar
733,007
Kullanıcılar
387,599
Son üye
Oğulcan özkan

Yeni konular

Üst