📄 typeb anti.txt
字号:
unsigned char PiccREQB(unsigned char afi,
unsigned char param,
unsigned char *atqb) // (OUT) 12 * n bytes
{
unsigned char i, num_slots;
unsigned char rlen = 0;
unsigned char max_len, boc, anti_collection;
SetRfMode( 1 );
anti_loop:
anti_collection = 0;
rc531_buf[0] = 0x05;
rc531_buf[1] = afi;
rc531_buf[2] = param;
num_slots = 1 << (param & 0x07);
if( RC531Send( PCD_TRANSCEIVE, rc531_buf, 3 ) == 0 )
return rlen;
for(i=0; i<num_slots; i++)
{
/*
if (RC531Receive( atqb+rlen, 12, 50 ) == 12)
{
rlen += 12;
}
*/
_WDR();
max_len = 12;
switch( rc632_receive_ac(atqb+rlen, &max_len, &boc) )
{
case 1:
rlen += 12;
break;
case 2:
anti_collection = 1;
break;
default:
break;
}
if( (i != (num_slots - 1)) && (num_slots != 1) )
{// next slot
rc531_buf[0] = 0x05 | ((i+1) << 4) ;
if( RC531Send( PCD_TRANSCEIVE, rc531_buf, 1 ) == 0 )
{
break;
}
}
}
if( anti_collection )
goto anti_loop;
return rlen;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -