指纹传感器的测试软件,【Arduino】168种传感器系列实验(149)-AS608光学指纹识别模块-Arduino中文社区 - Powered by Discuz!...

该博客介绍了一个使用Arduino进行AS608光学指纹识别模块与0.91寸OLED液晶屏显示模块的实验。首先,通过Arduino IDE安装了所需的Adafruit库,然后详细说明了模块的接线方法。在代码部分,展示了如何识别指纹ID并在OLED屏幕上显示对应的人名。实验中,如果检测到特定的指纹ID,将在OLED屏幕上显示对应的用户问候。
摘要由CSDN通过智能技术生成

[mw_shl_code=arduino,true]/*

【Arduino】168种传感器模块系列实验(资料+代码+图形+仿真)

实验一百五十:AS608光学指纹识别模块+0.91寸OLED液晶屏显示模块

安装AS608库:IDE—工具—管理库—搜索Adafruit-Fingerprint-Sensor-Library—安装

安装OLED库:IDE—工具—管理库—搜索Adafruit_SSD1306—安装

安装OLED库:IDE—工具—管理库—搜索Adafruit_GFX—安装

实验程序之十三:识别指纹ID,OLED显示识别人名

AS608模块实验接线

Vi      +3.3V(请勿接3.3V以上电源,否则烧毁模块!)

TX      2

RX      3

GND    GND

OLED 屏幕实验接线

oled模块    Ardunio Uno

GND---------GND接地线

VCC---------5V 接电源

SDA---------A4

SCL ------- A5

*/

#include

#include

#include

#define OLED_RESET 4

Adafruit_SSD1306 display(OLED_RESET);

#include

#include

SoftwareSerial mySerial(2, 3);

Adafruit_Fingerprint finger = Adafruit_Fingerprint(&mySerial);

int fingerprintID = 0;

String IDname;

void setup() {

//Fingerprint sensor module setup

Serial.begin(9600);

// set the data rate for the sensor serial port

finger.begin(57600);

if (finger.verifyPassword()) {

Serial.println("Found fingerprint sensor!");

}

else {

Serial.println("Did not find fingerprint sensor

0a99e8bd6ab0d47228b3b9f553fb6f46.gif");

while (1) {

delay(1);

}

}

//OLED display setup

Wire.begin();

display.begin(SSD1306_SWITCHCAPVCC, 0x3C);

//displays main screen

displayMainScreen();

}

void loop() {

displayMainScreen();

fingerprintID = getFingerprintIDez();

delay(50);

if (fingerprintID == 1 || fingerprintID == 3) {

IDname = "huadiao";

displayUserGreeting(IDname);

}

else if (fingerprintID == 2) {

IDname = "zhanghaoze";

displayUserGreeting(IDname);

}

}

// returns -1 if failed, otherwise returns ID #

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;

// found a match!

Serial.print("Found ID #");

Serial.print(finger.fingerID);

Serial.print(" with confidence of ");

Serial.println(finger.confidence);

return finger.fingerID;

}

void displayMainScreen() {

display.clearDisplay();

display.setTextSize(1);

display.setTextColor(WHITE);

display.setCursor(7, 5);

display.println("Waiting fingerprint");

display.setTextSize(1);

display.setTextColor(WHITE);

display.setCursor(52, 20);

display.println("...");

display.display();

delay(2000);

}

void displayUserGreeting(String Name) {

display.clearDisplay();

display.setTextColor(WHITE);

display.setTextSize(2);

display.setCursor(0, 0);

display.print("Hello");

display.setCursor(0, 15);

display.print(Name);

display.display();

delay(5000);

fingerprintID = 0;

}[/mw_shl_code]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值