RFID

  物联网必不可少会接触到RFID,国内比较常见的RFID读卡驱动芯片有两款。一款是NXP的RC522这系列的,非常稳定,当然也相对较贵,另一款是复旦微电子的FM1702系列,国产的便宜没得说,今天调的就是它了。对这个我也没有深入去学习,毕竟是非常成熟的东西了,直接从网上下个例程驱动修改一下就行(http://www.elecfans.com/soft/6/2015/20150414368305.html),今天主要就记录一下主要的快速学习过程和调试遇到的一些问题。

  首先要了解一样新鲜事物,那必须得知道它的原理和过程,RFID是射频识别技术,分为很多种,这里说的是低频无源非接触式的,原理就是MCU通过操作FM1702芯片发送一串数据到射频天线上,天线产生对应的磁场,利用磁生电的原理,使靠近的卡片线圈中产生电流,这就实现了数据传输。那么作为金钱保存的卡片,不可能像内存一样发个地址数据就出来了吧,所以第一步就是学习卡片。卡片有很多种,我使用的是M1卡,主要呢是了解卡片如何实现数据的存储和读取。如图1-1是网上比较通用简洁的中文翻译文档,不过发现了一处错误,此处的例子应该是001状态时的。

图1-1

  当了解了卡片是如何存储的,这时候就来看网上的这个例程,1千多行代码,不要被吓到了,其实封装得挺好的,主要看main函数,发现主要就在图1-2这个函数里做处理,基本每个case就处理一个功能。耐心跟几次就大致了解了寻卡、选择卡、防冲突这些功能函数,大致了解之后就开始移植驱动了,然后调试验证寻卡函数,只要能调通这个函数,后面的就水到聚成了。

图1-2

  最后是我遇到的一个大问题,当卡片靠近读卡器的时候,卡片明显发热,而且寻卡时而成功时而失败,这时候我开始怀疑硬件了,最可能的地方肯定是天线了,模电的东西最难搞。可能是瞎猫撞上死耗子,直接被我锁定了天线的并联电容,经过调整电容的大小后,一切正常。最后的最后一定要一一验证函数功能,懒是一种好事,做底层的,有些再急也是不能省的,否则地基不稳,以后的高楼必然塌。验证函数功能后,有时间的话最后再瞧一眼,做一些稍微的改进,使以后的调用更方便。

  对于天线的问题关系到产品的稳定性,还是值得探讨的。深夜了,这个问题过两天再补上。

RFID的更多相关文章

  1. RFID考试背诵

    简答题: 简述RFID标准多元化的原因: 由不同的技术因素.利益因素导致: 工作频率分布在低频至微波的多个频段中,频率不同,技术差异大. 作用距离的差异导致标准不同:因为应答器分为有源.无源两种工作方 ...

  2. 基于 Arduino 的 RFID 识别实验

    http://www.it165.net/embed/html/201512/3287.html 2015年12月04日(周五) 上午  博士的智能卡实验--RFID识别实验,基于51单片机: 我们的 ...

  3. C# RFID windows 服务 网络协议方式

    上篇话说是串口方式操作RFID设备. 下面介绍网络协议方式. 设备支持断线重连. 那我们的服务也不能差了不是. 所以这个服务类也是支持的哦. 不解释上代码: namespace Rfid { /// ...

  4. RFID电子标签天线的印刷

    RFID 电子标签技术又称RFID(Radio FrequencyIdentification)射频识别技术,是一种非接触式的自动识别技术,通过相距几厘米到几米距离内传感器发射的无线电波,可以读取RF ...

  5. RFID应用范围

    RFID应用范围 (1)物流: 物流过程中的货物追踪,信息自动采集,仓储应用,港口应用,邮政,快递 (2)零售: 商品的销售数据实时统计,补货,防盗 (3)制造业: 生产数据的实时监控,质量追踪,自动 ...

  6. RFID标签

    定义: RFID无线射频识别是一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据,识别工作无须人工干预,可工作于各种恶劣环境.RFID技术可识别高速运动物体并可同时识别多个电子标 ...

  7. IC/RFID/NFC 关系与区别

    IC卡 (Integrated Circuit Card,集成电路卡) 有些国家和地区也称智能卡(smart card).智慧卡(intelligent card).微电路卡(microcircuit ...

  8. C# RFID windows 服务 串口方式

    话说RFID以前很火所以整理一下一年前自己处理的RFID程序,放源码. 一开始觉得他是个很神奇的东西. 包含串口通讯和网络通讯. 由于网络通讯设备太贵,所以国内的设备基本上都是在外置一个比较便宜的模块 ...

  9. RFID Hacking④:使用ProxMark3 破解门禁

    文中提及的部分技术可能带有一定攻击性,仅供安全学习和教学用途,禁止非法使用! 0×00 前言 国际黑客大会Defcon传统之一:开锁!因为黑客认为锁也是一种安全挑战.我们在黑客题材电影.电视剧中也常常 ...

  10. DIY FSK RFID Reader

    This page describes the construction of an RFID reader using only an Arduino (Nano 3.0 was tested, b ...

随机推荐

  1. FireMoneky 画图 Point 赋值

    VCL 的 Canvas.Pen 对应FMX: Canvas.Stroke;VCL到 Canvas.Brush 对应FMX: Canvas.Fill. TCircle 圆形控件 Inkscape 0. ...

  2. Symfony 从路由认识它

    经过上一篇文章之后,我们呢,可以访问这个默认的页面,你也会看到一堆高级的debug工具.好了,这次我们开始更多地了解这个symfony2.0. 首先我们要明白一点,Symfony2 的配置是一个着实很 ...

  3. Api2Doc生成 Restful API 文档

    1,引入maven <dependency> <groupId>com.github.terran4j</groupId> <artifactId>te ...

  4. MathExamLv2——周世元211606348,许燕婷211606338

    结对编程 211606348 周世元 211606338 许燕婷 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) P ...

  5. Selenium+TestNG+Maven 搭建

    Java环境配置 Eclipse配置TestNG Eclipse配置Maven pom.xml文件相关配置,添加依赖selenium和TestNg的jar包 <!-- https://mvnre ...

  6. 126. Word Ladder II( Queue; BFS)

    Given two words (beginWord and endWord), and a dictionary's word list, find all shortest transformat ...

  7. mybatis框架入门程序:演示通过mybatis实现数据库的添加操作

    1.mybatis的基本配置准备在我的这篇博文中可以找到:https://www.cnblogs.com/wyhluckdog/p/10149480.html 2. 映射文件: 在User.xml中添 ...

  8. Linux --centos7 开机启动设置

    以Linux下指定sun用户在linux开机时执行/home/sun/startrun.sh为例: 以root登录linux 执行vi /etc/rc.d/rc.local 在文档末尾添加一行语句:s ...

  9. ibatis 常用标签

    prepend:自动在前面加上:自动新手:自动预:自动前置 property:属性 compareValue:指定的常数,值 //判断不相等: <isNotEqual prepend=" ...

  10. 文件读取草稿(excel,csv)

    using NPOI.XSSF.UserModel; using System; using System.Collections.Generic; using System.Data; using ...