|
本帖最后由 FirstNPC 于 2021-10-21 18:37 编辑
void loop() {
getFingerprintIDez();
delay(50);
}
int getFingerprintIDez() {
uint8_t p = finger.getImage();
if (p != FINGERPRINT_OK) { //检测手指 封面
u8g2.firstPage(); // 清空显示设备内部缓冲区
u8g2.drawXBMP( 0 , 0 , 120 , 64 , fengmian ); //50,50为图片尺寸,根据你的图片尺寸修改
u8g2.sendBuffer(); // 显示缓冲区内容
return -1;
}
p = finger.image2Tz();//指纹错误
if (p != FINGERPRINT_OK) {
u8g2.firstPage();
u8g2.drawXBMP( 0 , 0 , 128 , 64 , zhifu );
u8g2.sendBuffer();
delay(1000);
u8g2.firstPage();
u8g2.drawXBMP( 0 , 0 , 121 , 62 , zijiren );
u8g2.sendBuffer();
delay(1000);
return ;
}
p = finger.fingerFastSearch();//无手指
if (p != FINGERPRINT_OK) {
u8g2.firstPage();
u8g2.drawXBMP( 0 , 0 , 124 , 62 , wuzhi );
u8g2.sendBuffer();
return -1;
}
// found a match!
u8g2.firstPage();
u8g2.setFont(u8g2_font_ncenB14_tr);
u8g2.drawStr(32,60," OPEN ");
u8g2.sendBuffer();
digitalWrite(relayPin, HIGH);
delay(5000);
digitalWrite(relayPin, LOW);
u8g2.firstPage();
u8g2.clearBuffer();
return finger.fingerID;
}[img]%5Bimg%5D[/img][/img]
上传后每次陷入函数getFingerprintIDez();中的if语句,且运行过程中直接无视if语句中的判断条件,是因为占用动态内存太大的原因码? |
|