MFRC522问题[通俗易懂]

以前调试一直正常,最近重新使用新模块发现居然不能选卡,寻卡防冲撞都正常。一直折腾了两三天,最后更改复位延时直接解决问题。///////////////////////////////////////////////////////////////////////功能:复位RC522//返回:成功返回MI_OK///////////////////////////////…

大家好,又见面了,我是你们的朋友全栈君。

以前调试一直正常,最近重新使用新模块发现居然不能选卡,寻卡防冲撞都正常。一直折腾了两三天,最后更改复位延时直接解决问题。

/
//功    能:复位RC522
//返    回: 成功返回MI_OK
/
char PcdReset(void)
{

    //unsigned char i;
    MF522_RST(GPIO_PIN_SET);
    delay_us(10);/新添加的
        //__NOP();   //原来的              

    MF522_RST(GPIO_PIN_RESET);
    delay_us(10);
    //    __NOP();                   

    MF522_RST(GPIO_PIN_SET);
    delay_us(10);
    //    __NOP();               
    
    WriteRawRC(CommandReg,PCD_RESETPHASE);
    delay_us(10);
    //    __NOP();                
    
    MF522_State = 0;
    WriteRawRC(ModeReg,0x3D);         //和Mifare卡通讯,CRC初始值0x6363
    WriteRawRC(TReloadRegL,30);       //定时器的低8位数据,
    WriteRawRC(TReloadRegH,0);        //定时器的高8位数据,
    WriteRawRC(TModeReg,0x8D);        //定时器模式寄存器,定时器减值计数
    WriteRawRC(TPrescalerReg,0x3E);   //实际值是OXD3E,这部分主要是设置定时器寄存器,
   WriteRawRC(TxAutoReg,0x40);        //必须要,设置逻辑1,强制100%ASK调制?
    return MI_OK;
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/126861.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 【转载】一些VS2013的使用技巧

    【转载】一些VS2013的使用技巧

    2021年11月18日
  • Redis的持久化机制

    Redis的持久化机制

  • 数据结构 图的邻接矩阵

    数据结构 图的邻接矩阵图的邻接矩阵的存储方式是用两个数组来实现的,一个一维数组存储顶点信息,一个二维数组存储线(无向图)或弧(有向图)的信息。设图G有n个顶点,则邻接矩阵是一个n×n的方阵,定义为:无向图的邻接矩阵,两个顶点有边则为1,否则,为0;因为是无向图arc[i][j]=arc[j][i],所以矩阵为对称矩阵,对角线为自己到自己的边,邻接矩阵中,行之和或者列之和都为各顶点度的总数。设图G有是网图,有n个…

  • 文件操作(File类等)API摘要[通俗易懂]

    文件操作(File类等)API摘要[通俗易懂]Console此类包含多个方法,可访问与当前Java虚拟机关联的基于字符的控制台设备(如果有)。虚拟机是否具有控制台取决于底层平台,还取决于调用虚拟机的方式。如果虚拟机从一个交互式命令行开始启动,且没有重定向标准输入和输出流,那么其控制台将存在,并且通常连接到键盘并从虚拟机启动的地方显示。如果虚拟机是自动启动的(例如,由后台作业调度程序启动),那么它通常没有控制台。如果此虚拟机具

  • BitBlt用法_BIT函数

    BitBlt用法_BIT函数BitBlt用法在VC中显示位图常用取BitBlt()方法,它是将一幅位图从一个设备场景复制到另一个。源和目标DC相互间必须兼容。今天要将一些位图显示到窗口中,所以学习了一下。我已经将要用的位图导入到工程资源中,

    2022年10月19日
  • 吐血整理!java面试中经常被问到的问题「建议收藏」

    吐血整理!java面试中经常被问到的问题「建议收藏」主备同步的实现原理我们先来了解一下主备同步的原理,下面以一个update语句来介绍主库与备库间是如何进行同步的。上图是一个update语句在节点A执行,然后同步到节点B的完整流程图,具体步骤有:主库接受到客户端发送的一条update语句,执行内部事务逻辑,同时写binlog。备库通过changemaster命令,设置主库的IP、端口、用户名和密码,以及要从哪个位置开始请求binlog。这个位置包含文件名和偏移量。在备库上执行startslave命令,启动两个线程io_thread

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号