petermxw 发表于 2016-1-6 21:56:07

UID卡号写错的修补方法


如图
byte0-byte3is UID
byte4 is check byte 算法 byte4 = byte0 ^ byte1 ^ byte2 ^ byte3
byte5 is 0x08
byte6 is 0x04, byte5 and byte6 are m1 card type cannot be changed at will
byte7-byte15 is custom manufacture No.

所以说0块的0扇区不是随便写的……。你得按照这个格式来 即使别的不按照 最起码 byte5、byte6是需要的 否则基站寻卡的时候就会返回 这货是什么卡,我不知道的信号。当然了 UID可写本身就是bug所以即使像我一样随便写其实也是可以修复回来的,关键是防碰撞函数处理。首先强制给防碰撞函数传递0x4000。当然在防碰撞函数返回的时候就会因为CRC校验不对返回错误,不要管 屏蔽掉。然后把选卡函数的错误返回也屏蔽掉。运行完选卡函数直接进入休眠模式。然后依次按照莫友提供的步骤一步一步写数据就ok了。此时0扇区就强行写入卡中。希望对大家有用。
页: [1]
查看完整版本: UID卡号写错的修补方法