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

rizaksu06

Üye
Katılım
31 Mar 2019
Mesajlar
1
Puanları
1
Yaş
23
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;

}
 

Sponsor Bağlantı

Forum istatistikleri

Konular
105,062
Mesajlar
739,789
Kullanıcılar
390,581
Son üye
cimentepe93

Yeni konular

Üst