|
求教各位老师、现在项目需要用rc522操作FM1208-09的cpu卡。
使用的522模块是之前项目用的,可正常操作IC卡。
目前情况是:寻卡、防碰撞、选卡全部正常,但是执行rats复位后、只返回1个字节数据、而且好像是碰撞返回卡号的第三字节。
请教各位前辈有没有遇到这种情况的,可能是什么地方出的问题?
固件网上找的,发现大同小异,其中初始化RC522代码如下:
void PcdInitReg()
{
asm("nop");
WriteRawRC(CommandReg,PCD_RESETPHASE);
asm("nop");
WriteRawRC(ModeReg,0x3D); //和Mifare卡通讯,CRC初始值0x6363
WriteRawRC(TModeReg,0x8D); //定时器模式寄存器,定时器减值计数
WriteRawRC(TReloadRegL,0x30); //定时器的低8位数据
WriteRawRC(TReloadRegH,0xff); //定时器的高8位数据
WriteRawRC(TPrescalerReg,0x3E); //实际值是0X0D3E这部分主要是设置定时器寄存器
WriteRawRC(TxAutoReg,0x40); //必须要,设置逻辑1,强制100%ASK调制
Pcb=0x00;
asm("nop");
ClearBitMask(Status2Reg,0x08);
WriteRawRC(RxSelReg,0x86);//84
WriteRawRC(RFCfgReg,0x7F);//4F |
阿莫论坛20周年了!感谢大家的支持与爱护!!
“你必须好好活下去,任何时候都不要失去勇气。我们都会走过这个困难的时代。” ——《黄河绝恋》(1999)
|