typeb anti.txt

来自「本文对taye b 类型卡的一种作了详细价绍」· 文本 代码 · 共 59 行

TXT
59
字号
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 + =
减小字号Ctrl + -
显示快捷键?