У меня есть считыватель RFID, подключенный к Arduino, и один, который подключается к ПК. У ПК есть варианты вывода в разных форматах. У меня есть этот код для моего Arduino:
// interrupt that happens when INTO goes low (0 bit)
void ISR_INT0() {
//Serial.print("0"); // uncomment this line to display raw binary
bitCount++;
flagDone = 0;
weigand_counter = WEIGAND_WAIT_TIME;
}
// interrupt that happens when INT1 goes low (1 bit)
void ISR_INT1() {
//Serial.print("1"); // uncomment this line to display raw binary
databits[bitCount] = 1;
bitCount++;
flagDone = 0;
weigand_counter = WEIGAND_WAIT_TIME;
}
if (bitCount == 26) {
for (i=1; i<25; i++) {
cardCode <<=1;
cardCode |= databits[i];
}
printBits();
}
Итак, это читается в двоичном формате и преобразует его в базу 10.
Согласно считывателю ПК, это «8 номеров в D (последние 3 байта)», я хочу преобразовать свои числа в «10 номеров в D (четыре байта)», возможно ли это? Некоторые примеры:
Binary: 001001011010111111101011 Actual reading: 2469867 Wanted Reading: 0270905323
Binary: 001001011010000101101010 Actual reading: 2466154 Wanted reading: 0270901610