братцы
подключил ардуйно нано к читателю rc522
залил скеть
#include ‹SPI.h›
#include ‹MFRC522.h›
#define RST_PIN 9 // Configurable, see typical pin layout above
#define SS_1_PIN 10 // Configurable, take a unused pin, only HIGH/LOW required, must be diffrent to SS 2
#define SS_2_PIN 8 // Configurable, take a unused pin, only HIGH/LOW required, must be diffrent to SS 1
#define NR_OF_READERS 2
byte ssPins[] = {SS_1_PIN, SS_2_PIN};
MFRC522 mfrc522[NR_OF_READERS]; // Create MFRC522 instance.
/**
* Initialize.
*/
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
for (uint8_t reader = 0; reader ‹ NR_OF_READERS; reader++) {
mfrc522[reader].PCD_Init(ssPins[reader], RST_PIN); // Init each MFRC522 card
//Serial.print(F("Reader "));
///Serial.print(reader);
// Serial.print(F(": "));
mfrc522[reader].PCD_DumpVersionToSerial();
}
}
/**
* Main loop.
*/
void loop() {
for (uint8_t reader = 0; reader ‹ NR_OF_READERS; reader++) {
// Look for new cards
if (mfrc522[reader].PICC_IsNewCardPresent() && mfrc522[reader].PICC_ReadCardSerial()) {
dump_byte_array(mfrc522[reader].uid.uidByte, mfrc522[reader].uid.size);
MFRC522::PICC_Type piccType = mfrc522[reader].PICC_GetType(mfrc522[reader].uid.sak);
// mfrc522[reader].PICC_HaltA();
// mfrc522[reader].PCD_StopCrypto1();
} //if (mfrc522[reader].PICC_IsNewC
} //for(uint8_t reader
}
/**
* Helper routine to dump a byte array as hex values to Serial.
*/
void dump_byte_array(byte *buffer, byte bufferSize) {
for (byte i=0; i ‹ bufferSize ;i++) {
//Serial.print(buffer[i] ‹ 0x10 ? " 0" : " ");
Serial.print(buffer[i], HEX);
}
}
//----------------------------------------------
подношу карту 13мгц и он выдает, например,
40A744DA.
все четко, нo нужно поменять последовательность байтов на обратное т.е.
нужно получить DA44A740
ну, я подумал сделать так;
for (byte i=bufferSize; i›0 ;i--)
ну, последовательность то меняется, но теряются байты
0401957
попробовал так for (byte i=bufferSize-1; i›0 ;i--)
получил
401957 и опять не зватает одного
знатоки помогите пожалуйста в чем тут дело?