mfrc522 работа с uid карты

akimov_aleks
Offline
Зарегистрирован: 04.04.2013

Привет всем помогите понять работаю с mfrc522 считываю uid карты. чтоб мне дальше с ней работать

не могу полный uid поместить в переменную для работы сней . вопрос новечка 

 

#include <SPI.h>
#include <MFRC522.h>

#define RST_PIN		9		// 
#define SS_PIN		53		//

MFRC522 mfrc522(SS_PIN, RST_PIN);	// Create MFRC522 instance

void setup() {
	Serial.begin(9600);		// Initialize serial communications with the PC
	while (!Serial);		// Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
	SPI.begin();			// Init SPI bus
	mfrc522.PCD_Init();		// Init MFRC522
	
}

void loop() {
	// Look for new cards
	if ( ! mfrc522.PICC_IsNewCardPresent()) {
		return;
	}

	// Select one of the cards
	if ( ! mfrc522.PICC_ReadCardSerial()) {
		return;
	}

	// Dump debug info about the card; PICC_HaltA() is automatically called
	//mfrc522.PICC_DumpToSerial(&(mfrc522.uid));
Serial.print("");
for (byte i = 0; i < mfrc522.uid.size; i++) {
Serial.print(mfrc522.uid.uidByte[i], HEX);
// КАК МНЕ ТУТ В ПЕРЕМЕННУЮ ВСЕ СОБРАТЬ ЧТОБ ПОЛУЧИТЬ ЗНАЧЕНИЯ

}
Serial.println("");
delay(1000);
}

 

Tomasina
Tomasina аватар
Offline
Зарегистрирован: 09.03.2013

Примеры из библиотеки смотрели?

akimov_aleks
Offline
Зарегистрирован: 04.04.2013
Все решенно


unsigned long uidDec, uidDecTemp;       // переменные для получения UID 
.....
....
// полученя UID
Serial.print("");
for (byte i = 0; i < mfrc522.uid.size; i++) {
uidDecTemp=mfrc522.uid.uidByte[i];
                uidDec=uidDec*256+uidDecTemp;
        } 
// полученя UID
Serial.println(uidDec);

 

gekso
gekso аватар
Offline
Зарегистрирован: 27.09.2017

123321

Logik
Offline
Зарегистрирован: 05.08.2014

Ахринеть, копатель! 3 года прошло с тех пор как ТС сам себе ответил, и разумеется неверно, т.к. UID ,бывает 4, 7 и 10 байт (а может и еще чего напридумуют) и в лонг оно разумеется лезет но не всегда ;)  Но нахерища лепить дето пиз..ный код не решающий проблему, еще  и влепить его не по правилам форума. А ХЗ, шоб за умного приняли наверно.