Hirdetés
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- AMD Navi Radeon™ RX 9xxx sorozat
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- Új szintre emeli a csalók elleni védelmet a Battlefield 6
- Milyen egeret válasszak?
- Milyen alaplapot vegyek?
- Apple MacBook
- Home server / házi szerver építése
- Soundbar, soundplate, hangprojektor
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
-
PROHARDVER!
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
DeniL
tag
Sziasztok,
a segítségeteket szeretném kérni. Problémába ütköztem, 2 napja agyalok rajta, egyszerűen kezdem feladni és a kukába dobni az egészet
Adott egy feladat:
Van 6 db NFC tag-em, elneveztem őket 1-6-ig, van egy nfc olvasó (kezdetben egy NFC shield, később a nagyobb hatótáv és teljesítmény miatt ID-12LA vagy ID-20 lesz).
A 6 darab tag-et megfelelő sorrendben szeretném beolvastatni. Azaz deklaráltam 6 constanst a 6 tag UID-ja alapján és azt szeretném, hogy kezdjen el beolvasni, ha odarakok bármilyen tag-et nem az elsőt, akkor addig olvasson, amíg meg nem kapja az első tag-et, amjd ha megkapta, menjen beljebb és kérje a második tag-et, ha nem a másodikat kapja, addig olvasson, amíg azt nem adom neki....
A mintakódomban amivel szenvedek az a hibajelenség, hogy kéri az első tag-et, ha nem azt adom neki, akkor olvas újra, ez idáig rendben is van. Ha odaadom neki a megfelelőt, akkor kéri a második tag-et, majd ha nem azt adom oda, 1x lefut az else ág, hogy "újra beolvasás történik", majd másodpercek múlva kifut a kódom és kéri az első tag-et......nem értem miért.
Még egy valami észrevételt vettem észre, a két NFC/RFID olvasó között (NFC shield/ ID-12LA), hogy amíg az nfc shieldhez odaérintek egy tag-et, akkor kiolvas egyszerre vagy 6x, tehát lehet a kódom lefutna, amíg a ID 12-nél ott tarthatom a tag-et, akkor is csak 1x olvassa le.
Hogyan tudnám még azt kiküszöbölni, hogy egyszer olvasson (tag UID) és utána többet már ne, csak fusson tovább a kódom?
És a satnya kódrészletem amin már 2 napja töröm a fejem hiába......
#include <SPI.h>
#include <PN532_SPI.h>
#include <PN532.h>
#include <NfcAdapter.h>String const myUID1 = "F0 D7 70 80";//
String const myUID2 = "A0 3C 8D 24";//
String const myUID3 = "C0 9A 0E 26";//
String const myUID4 = "D2 82 C0 3D";//
String const myUID5 = "A2 E1 C1 3D";//
String const myUID6 = "C0 B6 06 26";//PN532_SPI interface(SPI, 10); // create a PN532 SPI interface with the SPI CS terminal located at digital pin 10
NfcAdapter nfc = NfcAdapter(interface); // create an NFC adapter objectvoid setup()
{
Serial.begin(115200);
//Serial.println("NFC Tag Writer"); // Serial Monitor Message
nfc.begin();
}void loop()
{
if (nfc.tagPresent())
{NfcTag tag = nfc.read();
String idnumber = tag.getUidString();if (myUID1 == idnumber)
{
Serial.println("This is the first");NfcTag tag = nfc.read();
idnumber = tag.getUidString();delay(4000);
if (myUID2 == idnumber)
{
Serial.println("This is the second");
NfcTag tag = nfc.read();
idnumber = tag.getUidString();delay(4000);
if (myUID3 == idnumber)
{
Serial.println("This is the second");
NfcTag tag = nfc.read();
idnumber = tag.getUidString();delay(4000);
if (myUID4 == idnumber)
{
Serial.println("This is the fourth");
NfcTag tag = nfc.read();
idnumber = tag.getUidString();delay(4000);
if (myUID5 == idnumber)
{
Serial.println("This is the fifth");
NfcTag tag = nfc.read();
idnumber = tag.getUidString();delay(4000);
if (myUID6 == idnumber)
{
Serial.println("This is the sixth");
}
else
{
Serial.println("Not correct tag!");
}
}
else
{
Serial.println("Not correct tag!");
}
}
else
{
Serial.println("Not correct tag!");
}
}
else
{
Serial.println("Not third tag!");
do {
NfcTag tag = nfc.read();
idnumber = tag.getUidString();
delay(2000);
}
while (myUID3 == idnumber);
}
}
else
{
Serial.println("Not second tag!");
do {
NfcTag tag = nfc.read();
idnumber = tag.getUidString();
delay(2000);
}
while (myUID2 == idnumber);
}
}
else
{
Serial.println("Not firts tag!");
do {
NfcTag tag = nfc.read();
idnumber = tag.getUidString();
delay(2000);
}
while (myUID1 == idnumber);
}
}
else
{
Serial.println("Place tag to the reader!");
}
}
Új hozzászólás Aktív témák
- Elektromos autók - motorok
- Hálózati / IP kamera
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- Lakáshitel, lakásvásárlás
- Honor Magic5 Pro - kamerák bűvöletében
- BestBuy ruhás topik
- AMD Navi Radeon™ RX 9xxx sorozat
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Autóápolás, karbantartás, fényezés
- További aktív témák...
- Telefon felvásárlás!! iPhone X/iPhone Xs/iPhone XR/iPhone Xs Max
- LG 55C4 - 48" OLED evo - 4K 144Hz - 0.1ms - NVIDIA G-Sync - FreeSync - HDMI 2.1 - A9 Gen7 CPU
- HIBÁTLAN iPhone 11 64GB White -1 ÉV GARANCIA - Kártyafüggetlen, MS3027
- Lenovo Thinkpad L14 Gen 4 -14"FHD IPS - i5-1335U - 8GB - 256GB - Win11 - 2 év garancia - MAGYAR
- Bomba ár! Dell Latitude E7240 - i7-4GEN I 16GB I 256SSD I 12,5" HD I HDMI I Cam I W10 I Garancia!
Állásajánlatok
Cég: FOTC
Város: Budapest