Страница 1 из 1

Ошибка в коде блока RFID-RC522

Добавлено: 12 май 2017, 07:06
Fuji1604
Найдите в коде скетча стоку (выделена красным)
void loop()
{int _tempVariable_int;
_mfrc522_ConnectInpulse = _mfrc522.PICC_IsNewCardPresent();
if(_mfrc522_ConnectInpulse) {_mfrc522_ConnectInpulse = _mfrc522.PICC_ReadCardSerial();}
if(_mfrc522_ConnectInpulse) {
_mfrc522_notConnectCounter = 0;
_mfrc522_hasNewCard = 1;
} else {
if(_mfrc522_notConnectCounter > 0) {
_mfrc522_hasNewCard = 0;
} else {_mfrc522_notConnectCounter = _mfrc522_notConnectCounter + 1;}
_mfrc522.PICC_HaltA(); 
_mfrc522.PCD_StopCrypto1();}
if (_mfrc522_hasNewCard) {
if ( !_mfrc522_CardInfoOldState) {
_mfrc522_CardInfoOldState = 1;
_FLPArray180037810[10] = _mfrc522.uid.size;
 for(byte i = 0; i <=_FLPArray180037810[10]; i++){_FLPArray180037810 = _mfrc522.uid.uidByte;}
}} else {
_mfrc522_CardInfoOldState = 0;
 for(byte i = 0; i <=11 ; i++) {_FLPArray180037810 = 0;}
}
_PWDC = 0;

для устранения ошибки необходимо добавить -1 в этом месте:
for(byte i = 0; i <=_FLPArray180037810[10] -1
; i++){_FLPArray180037810 = _mfrc522.uid.uidByte;}

 т.к. после "прочтения" карты с 7 битным UID к следующей например 4х битной приписываются биты от предыдущей.
Не знаю как это изменить в блоке, пока меняю в коде после компиляции.

Ошибка в коде блока RFID-RC522

Добавлено: 01 мар 2018, 07:10
Fuji1604
в новых версиях FLP ошибка еще есть, изменяйте при компилировании.

Ошибка в коде блока RFID-RC522

Добавлено: 01 мар 2018, 10:04
Lisica
Fuji1604 писал(а): 01 мар 2018, 07:10изменяйте при компилировании.
на что изменять?

Ошибка в коде блока RFID-RC522

Добавлено: 01 мар 2018, 10:19
pan
Fuji1604 писал(а): 12 май 2017, 07:06необходимо изменить на:
for(byte i = 0; i <=_FLPArray180037810[10]-1; i++)
вроде по русски написано

Ошибка в коде блока RFID-RC522

Добавлено: 01 мар 2018, 10:40
Lisica
pan писал(а): 01 мар 2018, 10:19вроде по русски написано
Не доглядел...