RFID
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的更多相关文章
- RFID考试背诵
简答题: 简述RFID标准多元化的原因: 由不同的技术因素.利益因素导致: 工作频率分布在低频至微波的多个频段中,频率不同,技术差异大. 作用距离的差异导致标准不同:因为应答器分为有源.无源两种工作方 ...
- 基于 Arduino 的 RFID 识别实验
http://www.it165.net/embed/html/201512/3287.html 2015年12月04日(周五) 上午 博士的智能卡实验--RFID识别实验,基于51单片机: 我们的 ...
- C# RFID windows 服务 网络协议方式
上篇话说是串口方式操作RFID设备. 下面介绍网络协议方式. 设备支持断线重连. 那我们的服务也不能差了不是. 所以这个服务类也是支持的哦. 不解释上代码: namespace Rfid { /// ...
- RFID电子标签天线的印刷
RFID 电子标签技术又称RFID(Radio FrequencyIdentification)射频识别技术,是一种非接触式的自动识别技术,通过相距几厘米到几米距离内传感器发射的无线电波,可以读取RF ...
- RFID应用范围
RFID应用范围 (1)物流: 物流过程中的货物追踪,信息自动采集,仓储应用,港口应用,邮政,快递 (2)零售: 商品的销售数据实时统计,补货,防盗 (3)制造业: 生产数据的实时监控,质量追踪,自动 ...
- RFID标签
定义: RFID无线射频识别是一种非接触式的自动识别技术,它通过射频信号自动识别目标对象并获取相关数据,识别工作无须人工干预,可工作于各种恶劣环境.RFID技术可识别高速运动物体并可同时识别多个电子标 ...
- IC/RFID/NFC 关系与区别
IC卡 (Integrated Circuit Card,集成电路卡) 有些国家和地区也称智能卡(smart card).智慧卡(intelligent card).微电路卡(microcircuit ...
- C# RFID windows 服务 串口方式
话说RFID以前很火所以整理一下一年前自己处理的RFID程序,放源码. 一开始觉得他是个很神奇的东西. 包含串口通讯和网络通讯. 由于网络通讯设备太贵,所以国内的设备基本上都是在外置一个比较便宜的模块 ...
- RFID Hacking④:使用ProxMark3 破解门禁
文中提及的部分技术可能带有一定攻击性,仅供安全学习和教学用途,禁止非法使用! 0×00 前言 国际黑客大会Defcon传统之一:开锁!因为黑客认为锁也是一种安全挑战.我们在黑客题材电影.电视剧中也常常 ...
- DIY FSK RFID Reader
This page describes the construction of an RFID reader using only an Arduino (Nano 3.0 was tested, b ...
随机推荐
- 「小程序JAVA实战」小程序视频处理工具ffmpeg(47)
转自:https://idig8.com/2018/09/16/xiaochengxujavashizhanxiaochengxushipinchuligongjuffmpeg46/ 前面已经把视频成 ...
- 【转】Unity Scene场景自定义坐标轴
来自:https://blog.csdn.net/cheng624/article/details/70859054 多看看别人的代码是没有坏处的,即使学不了人家的大框架,偶尔拾起一些小东西也是可以的 ...
- Spring-JDBC模板-事务
Spring-JDBC模板-事务 1.事务概述 什么是事务 逻辑上的一组操作,组成这组操作的各个单元要么全部成功要么全部失败 事务的特点ACID 原子性:事务不可分割(事务要么成功,要么失败) 一致性 ...
- Leetcode:Add Two Numbers分析和实现
Add Two Numbers这个问题的意思是,提供两条链表,每条链表表示一个十进制整数,其每一位对应链表的一个结点.比如345表示为链表5->4->3.而我们需要做的就是将两条链表代表的 ...
- Memcached在Linux环境下的使用详解http://blog.51cto.com/soysauce93/1737161
大纲 一.什么是memcached 二.memcached特性 三.memcached存储方式 四.memcached安装与配置 五.memcached结合php 六.Nginx整合memcached ...
- 20-调用百度AI的文字识别
本来准备自己写识别的,貌似现在能力不足,直接偷懒用百度的api吧 from aip import AipOcr """ 你的 APPID AK SK "&quo ...
- Halcon阈值化算子dual_threshold和var_threshold的理解
Halcon中阈值二值化的算子众多,通常用得最多的有threshold.binary_threshold.dyn_threshold等. threshold是最简单的阈值分割算子,理解最为简单:bin ...
- DBA的工作职责和每日工作
DBA一般职责 1.安装和升级数据库服务器,以及应用程序工具构建和配置网络环境. 2.熟悉数据库系统的存储结构预测未来的存储需求,制订数据库的存储方案. 3.根据开发人员设计的应用系统需求创建数据库存 ...
- Chrome Console API 参考
https://developers.google.com/web/tools/chrome-devtools/console/command-line-reference
- FZU 1977 Pandora adventure (DP)
题意:给定一个图,X表示不能走,O表示必须要走,*表示可走可不走,问你多少种走的法,使得形成一个回路. 析: 代码如下: #pragma comment(linker, "/STACK:10 ...