You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Once I include the header file in my program, the Arduino IDE keeps showing the error about
Arduino: 1.8.5 (Mac OS X), Board: "Arduino/Genuino Uno"
/Users/Mingyang/Desktop/Fingerprint-Sensor/Code/fingerprint/fingerprint.ino:1:29: fatal error: DYE_Fingerprint.h: No such file or directory
#include <DYE_Fingerprint.h>
^
compilation terminated.
exit status 1
Error compiling for board Arduino/Genuino Uno.
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
my code:
#include<DYE_Fingerprint.h>// pin #2 is IN from sensor (GREEN wire)// pin #3 is OUT from arduino (WHITE wire)
#include<SoftwareSerial.h>
SoftwareSerial mySerial(2, 3);
DYE_Fingerprint finger = DYE_Fingerprint(&mySerial);
voidsetup()
{
Serial.begin(9600);
while (!Serial);
delay(100);
Serial.println("\n\nfinger detect test");
// 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 :(");
while (1) { delay(1); }
}
Serial.println("Waiting for valid finger...");
}
voidloop() // run over and over again
{
getFingerprintIDez();
delay(50); //don't ned to run this at full speed.
}
uint8_tgetFingerprintID() {
uint8_t p = finger.getImage();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image taken");
break;
case FINGERPRINT_NOFINGER:
Serial.println("No finger detected");
return p;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
return p;
case FINGERPRINT_IMAGEFAIL:
Serial.println("Imaging error");
return p;
default:
Serial.println("Unknown error");
return p;
}
// OK success!
p = finger.image2Tz();
switch (p) {
case FINGERPRINT_OK:
Serial.println("Image converted");
break;
case FINGERPRINT_IMAGEMESS:
Serial.println("Image too messy");
return p;
case FINGERPRINT_PACKETRECIEVEERR:
Serial.println("Communication error");
return p;
case FINGERPRINT_FEATUREFAIL:
Serial.println("Could not find fingerprint features");
return p;
case FINGERPRINT_INVALIDIMAGE:
Serial.println("Could not find fingerprint features");
return p;
default:
Serial.println("Unknown error");
return p;
}
// OK converted!
p = finger.fingerFastSearch();
if (p == FINGERPRINT_OK) {
Serial.println("Found a print match!");
} elseif (p == FINGERPRINT_PACKETRECIEVEERR) {
Serial.println("Communication error");
return p;
} elseif (p == FINGERPRINT_NOTFOUND) {
Serial.println("Did not find a match");
return p;
} else {
Serial.println("Unknown error");
return p;
}
// found a match!
Serial.print("Found ID #"); Serial.print(finger.fingerID);
Serial.print(" with confidence of "); Serial.println(finger.confidence);
return finger.fingerID;
}
// returns -1 if failed, otherwise returns ID #intgetFingerprintIDez() {
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;
}`
the header file code:
`#ifndef DYE_FINGERPRINT_H
#defineDYE_FINGERPRINT_H
#include"Arduino.h"
#if defined(__AVR__) || defined(ESP8266)
#include<SoftwareSerial.h>
#endif
#defineFINGERPRINT_OK0x00
#defineFINGERPRINT_PACKETRECIEVEERR0x01
#defineFINGERPRINT_NOFINGER0x02
#defineFINGERPRINT_IMAGEFAIL0x03
#defineFINGERPRINT_IMAGEMESS0x06
#defineFINGERPRINT_FEATUREFAIL0x07
#defineFINGERPRINT_NOMATCH0x08
#defineFINGERPRINT_NOTFOUND0x09
#defineFINGERPRINT_ENROLLMISMATCH0x0A
#defineFINGERPRINT_BADLOCATION0x0B
#defineFINGERPRINT_DBRANGEFAIL0x0C
#defineFINGERPRINT_UPLOADFEATUREFAIL0x0D
#defineFINGERPRINT_PACKETRESPONSEFAIL0x0E
#defineFINGERPRINT_UPLOADFAIL0x0F
#defineFINGERPRINT_DELETEFAIL0x10
#defineFINGERPRINT_DBCLEARFAIL0x11
#defineFINGERPRINT_PASSFAIL0x13
#defineFINGERPRINT_INVALIDIMAGE0x15
#defineFINGERPRINT_FLASHERR0x18
#defineFINGERPRINT_INVALIDREG0x1A
#defineFINGERPRINT_ADDRCODE0x20
#defineFINGERPRINT_PASSVERIFY0x21
#defineFINGERPRINT_STARTCODE0xEF01
#defineFINGERPRINT_COMMANDPACKET0x1
#defineFINGERPRINT_DATAPACKET0x2
#defineFINGERPRINT_ACKPACKET0x7
#defineFINGERPRINT_ENDDATAPACKET0x8
#defineFINGERPRINT_TIMEOUT0xFF
#defineFINGERPRINT_BADPACKET0xFE
#defineFINGERPRINT_GETIMAGE0x01
#defineFINGERPRINT_IMAGE2TZ0x02
#defineFINGERPRINT_REGMODEL0x05
#defineFINGERPRINT_STORE0x06
#defineFINGERPRINT_LOAD0x07
#defineFINGERPRINT_UPLOAD0x08
#defineFINGERPRINT_DELETE0x0C
#defineFINGERPRINT_EMPTY0x0D
#defineFINGERPRINT_SETPASSWORD0x12
#defineFINGERPRINT_VERIFYPASSWORD0x13
#defineFINGERPRINT_HISPEEDSEARCH0x1B
#defineFINGERPRINT_TEMPLATECOUNT0x1D//#define FINGERPRINT_DEBUG
#defineDEFAULTTIMEOUT1000///< UART reading timeout in milliseconds///! Helper class to craft UART packetsstructDYE_Fingerprint_Packet {
/**************************************************************************//*! @brief Create a new UART-borne packet @param type Command, data, ack type packet @param length Size of payload @param data Pointer to bytes of size length we will memcopy into the internal buffer*//**************************************************************************/DYE_Fingerprint_Packet(uint8_t type, uint16_t length, uint8_t * data) {
this->start_code = FINGERPRINT_STARTCODE;
this->type = type;
this->length = length;
address[0] = 0xFF; address[1] = 0xFF;
address[2] = 0xFF; address[3] = 0xFF;
if(length<64)
memcpy(this->data, data, length);
elsememcpy(this->data, data, 64);
}
uint16_t start_code; ///< "Wakeup" code for packet detectionuint8_t address[4]; ///< 32-bit Fingerprint sensor addressuint8_t type; ///< Type of packetuint16_t length; ///< Length of packetuint8_t data[64]; ///< The raw buffer for packet payload
};
///! Helper class to communicate with and keep state for fingerprint sensorsclassDYE_Fingerprint {
public:
#if defined(__AVR__) || defined(ESP8266)
DYE_Fingerprint(SoftwareSerial *ss, uint32_t password = 0x0);
#endifDYE_Fingerprint(HardwareSerial *hs, uint32_t password = 0x0);
voidbegin(uint32_t baud);
boolean verifyPassword(void);
uint8_tgetImage(void);
uint8_timage2Tz(uint8_t slot = 1);
uint8_tcreateModel(void);
uint8_temptyDatabase(void);
uint8_tstoreModel(uint16_t id);
uint8_tloadModel(uint16_t id);
uint8_tgetModel(void);
uint8_tdeleteModel(uint16_t id);
uint8_tfingerFastSearch(void);
uint8_tgetTemplateCount(void);
uint8_tsetPassword(uint32_t password);
voidwriteStructuredPacket(const DYE_Fingerprint_Packet & p);
uint8_tgetStructuredPacket(DYE_Fingerprint_Packet * p, uint16_t timeout=DEFAULTTIMEOUT);
/// The matching location that is set by fingerFastSearch()uint16_t fingerID;
/// The confidence of the fingerFastSearch() match, higher numbers are more confidentsuint16_t confidence;
/// The number of stored templates in the sensor, set by getTemplateCount()uint16_t templateCount;
private:uint8_tcheckPassword(void);
uint32_t thePassword;
uint32_t theAddress;
uint8_t recvPacket[20];
Stream *mySerial;
#if defined(__AVR__) || defined(ESP8266)
SoftwareSerial *swSerial;
#endif
HardwareSerial *hwSerial;
};
#endif
The text was updated successfully, but these errors were encountered:
This issue tracker is only to be used to report bugs or feature requests. This topic is more appropriate for the Arduino Forum. I'm sure we'll be able to help you with your problem over there.
If you haven't already done so, create a new thread in the appropriate section of the forum (http://forum.arduino.cc/), following all the rules. Be sure to post your code, using code tags (</> button on the toolbar).
Once I include the header file in my program, the Arduino IDE keeps showing the error about
my code:
The text was updated successfully, but these errors were encountered: