fix crc calc

This commit is contained in:
2022-03-09 17:03:36 +01:00
parent da371f43b7
commit f49d052e6e
3 changed files with 21 additions and 49 deletions

View File

@ -48,46 +48,7 @@ void NfcBoard::printNfcDevices(Serial* serial)
int NfcBoard::dispatch(char* inBuffer, Serial* serial)
{
if(strcmp(inBuffer, "tsta") == 0 )
{
serial->write_p(PSTR("Runing shift test\n"));
while(!serial->dataIsWaiting())
{
csReg.clear(false);
_delay_us(100);
}
serial->write_p(PSTR("Finished\n"));
csReg.clear(true);
return 0;
}
else if(strcmp(inBuffer, "tstb") == 0 )
{
serial->write_p(PSTR("Runing input shift test b\n"));
while(!serial->dataIsWaiting())
{
serial->write((int)(*irqReg.read()));
serial->putChar('\n');
_delay_us(100);
}
serial->write_p(PSTR("Finished\n"));
return 0;
}
else if(strcmp(inBuffer, "tstc") == 0 )
{
serial->write_p(PSTR("Runing spi test\n"));
while(!serial->dataIsWaiting())
{
csReg.setBit(1, false);
spim.readWrite((0x37 << 1) | (1 << 7));
serial->write((int)spim.readWrite());
serial->putChar('\n');
csReg.setBit(1, true);
_delay_us(100);
}
serial->write_p(PSTR("Finished\n"));
return 0;
}
else if(strcmp(inBuffer, "tstd") == 0 )
else if(strcmp(inBuffer, "detect") == 0 )
{
serial->write_p(PSTR("Runing tag detection test\n"));
bool oldPresent = false;
@ -98,10 +59,8 @@ int NfcBoard::dispatch(char* inBuffer, Serial* serial)
{
oldPresent = present;
serial->write_p(PSTR("Tag found, selecting\n"));
Mfrc522::Uid uid;
Mfrc522::serial = serial;
//Mfrc522::serial = serial;
uint8_t res = readers[0].selectTag(&uid);
Mfrc522::serial = nullptr;
if(res != 0)
@ -111,9 +70,14 @@ int NfcBoard::dispatch(char* inBuffer, Serial* serial)
serial->putChar('\n');
continue;
}
/*snprintf(buffer, SNPRINTF_BUFFER_SIZE, "Uid: %x %x %x %x %x %x %x %x %x %x\n",
uid.uidByte[0], uid.uidByte[1], uid.uidByte[2], uid.uidByte[3], uid.uidByte[4],
uid.uidByte[5], uid.uidByte[6], uid.uidByte[7], uid.uidByte[8], uid.uidByte[9]);*/
serial->write_p(PSTR("Uid: "));
for(uint8_t i = 0; i < uid.size; ++i)
{
serial->write((int)uid.uidByte[i]);
serial->putChar(':');
}
serial->putChar('\n');
break;
}
else if(!present && oldPresent)
{