单片机学习小组
直播中

刘慧

7年用户 1706经验值
私信 关注

如何利用RC522模块去复制一个S50空白门禁卡呢

如何利用RC522模块去复制一个S50空白门禁卡呢?

回帖(1)

张超

2022-1-20 10:30:37
女朋友最近门禁卡丢了,居然花了几十大洋去复制了一个门禁卡,太败家了。一次就是两斤排骨,多掉两次约等于半头猪。干脆自己写个复制门禁卡的工程,一劳永逸岂不是美滋滋,在淘宝十元买了RC522模块加几个S50空白门禁卡就开始刚源码。但学习源码时发现个问题,找遍全网都没答案。最后自己仔细看了下手册勉强明白了,所以发出来分享一下,有错的地方欢迎指正:

如图是RC522复位函数的一部分,函数的第一个参数是寄存器地址命令的宏定义,第二个参数是写到寄存器的值。查看RC522数据手册后了解了TReloadRegL,TReloadRegH是写定时器的高低位,TModeReg寄存器的低四位与TPrescalerReg是分频系数。搜一下网上这部分内容,没有人解释一下为什么向定时器写30,分频系数写0xD3E(3390)。
预分频寄存器写0xD3E(3390),3390/6.78MHz=0.5ms。
计数寄存器写30,30x0.5ms=15ms;
但是为什么是15ms我还是搞不清,根据手册可能是复位后需要的一个启动时间。

但是15ms与振荡器启动时间相去甚远,搞不懂为什么这么大。有朋友愿意讨论一下的话就再好不过了。目前还只是在研究代码,RC522模块还没到。到时候可以测试一下,看看把这个值改小会有什么影响。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分