Hex To String
-
Serial.print(F("Card UID:")); for (byte i = 0; i < (&(mfrc522.uid))->size; i++) { if((&(mfrc522.uid))->uidByte[i] < 0x10){ Serial.print(F(" 0")); } else{ Serial.print(F(" ")); } Serial.print((&(mfrc522.uid))->uidByte[i], HEX); tagID = tagID + ((&(mfrc522.uid))->uidByte[i], HEX); }
String tagID = ""; olarak tanımlı
Serial printler doğru UIDyi yazdırıyor, ancak devanımda tagIDyi yazdırdığımda daha farklı bir değer geliyor, değiştirdim bu sefer 16161616 geliyor falan, bir türlü içinden çıkamadım göremiyorum sıkıntı nerde azcık yardıma ihtiyacım var.
-
Kodlar falan hep bozulmuş tabi :/
Serial.print(F(
"Card UID:"
));
for
(byte i = 0; i < (&(mfrc
DEĞİŞKEN522.uid))->size; i++) {if
((&(mfrc
DEĞİŞKEN522.uid))->uidByte[i] < 0x10){Serial.print(F(
" 0"
));
}
else
{
Serial.print(F(
" "
));
}
Serial.print((&(mfrc
DEĞİŞKEN522.uid))->uidByte[i], HEX);tagID = tagID + ((&(mfrc
DEĞİŞKEN522.uid))->uidByte[i], HEX);}
Bir de yazmayı unutmuşum, arduino ile rfid okuyorum, kodlar c kodu yani. Son satır harici cayır cayır çalışıyor, zaten example kod, son satırda ben kendi değişkenime yazmaya çalışıyorum değeri o kadar.
-
Sondaki kod 2 değeri topluyor mu birleştiriyor mu?
tagID = 123
UID = 456result = 123456 mı olacak yoksa result = 579 mu olacak?
-
Birleştiriyor.
Mesela şöyle söyleyeyim:
Döngü sonucunda "Card UID: C2 F1 54 8A" yazıyor. Ben Bu "C2 F1 54 8A" kısmını tagID değişkenine atamak istiyorum, ama şu haliyle "19 21 52 33" gibi başka bir değer veriyor.
https://github.com/miguelbalboa/rfid/blob/master/MFRC522.cpp
Şu sınıfı kullanıyorum. PICC_DumpDetailsToSerial fonksiyonunun UID kısmını alıp kullandım.
-
Mifare okuyucu mu yapiyorsun hocam :)