概述
近年来随着微电子技术的不断发展,半导体技术和集成电路技术也在迅速发展。目前,ic卡已经深入到社会生活的各个角落,各种各样的卡大大方便了人们的生活,如银行使用的信用卡、公交车使用的交通卡、食堂使用的就餐卡、出入管理使用的考勤卡、打电话使用的电话卡、手机中使用的sim卡等。ic卡又称为集成电路卡。卡片内封装有集成电路,用以存储和处理数据。在ic卡的发展过程中正在经历从存储卡到智能卡,从接触式卡到非接触式卡,从近距离卡到远距离卡的过渡,与之相应的,能够读取卡内信息的阅读器也在不断的发展和更新。非接触式卡又称射频卡(应答器),使用无线电调制方式和阅读器进行信息交换。
射频识别技术是二十世纪九十年代兴起的一项自动识别技术,它利用无线电射频方式进行非接触式双向通信。rfid(radio frequency identification)系统中射频卡(应答器)与阅读器之间无需物理接触即可完成识别,可实现多目标识别和运动目标识别,应用范围更加广泛。图1是阅读器和应答器组成的一个完整射频系统:
从射频系统中可以看出阅读器的重要性及它的功能,在整个通信过程中阅读器起到桥梁的作用。
硬件设计
考虑到阅读器在系统中要完成的工作主要是从射频卡读取数据,并将数据经相应的处理后送给主机。在设计时按功能对阅读器进行模块化设计,图2是阅读器的内部功能框图。图中阅读器分为射频卡数据读取部分(射频部分)、控制电路部分、主机接口电路部分。
控制部分
此控制部分是为了辅助ri-r6c-001a工作,因为ri-r6c-001a芯片要正常工作,完成射频阅读器的功能,不但需要有外围电路,而且还需要有控制器对其进行适当的控制。在此设计中选用了pic16f874单片机作为控制器,由于此单片机有丰富的位操作指令,有spi串行口,精简的指令集,能够很容易的模拟ri-r6c-001a传送数据的时序以及时钟切换时序。由于ri-r6c-001a对外只提供 四个引脚dout、din、sclock、m-err,所以控制器的接口电路相对较简单。dout、din、sclock三个引脚分别连接到单片机的spi串行口sdi、sdo、sck三根线上,用来实现数据的串行传输。m-err引脚用来检测接收到射频卡中的数据是否发生错误,若有错误此引脚变为高电平,因此把该引脚接到单片机的外部中断输入引脚端,用于检测接收数据是否有错误,进而单片机对其做出相应的处理。由于ri-r6c-001a在接收射频卡中的数据并把它发送给控制器时,要求控制器要对其发送数据是否结束做出判断,并且ri-r6c-001a不发送数据时就不再送时钟,所以在此电路设计中把ri-r6c-001a的sclock引脚也接到了具有电压变化中断功能的rb4引脚,此引脚外接一个二极管,与软件结合起来,要求当控制器供应时钟时,rb4引脚处于高电平输出状态,经过二极管,rb4引脚不会输入时钟;当ri-r6c-001a供应时钟时 ,rb4引脚处于输入状态,sclock信号输入此引脚,从而可以对发送数据是否结束作出相应的判断。
射频部分
ri-r6c-001a芯片是ti公司最新开发的针对ic卡读写的多协议收发器,支持的协议包括: tag-it协议、iso/iec 15693-2、iso/iec 14443-2(type a)。该收发器由发送器,接收器,电源供应,参考时钟和内部振荡器,默认的复位设置和电源管理,串行通信接口等几部分组成。该芯片通常是+5v供电,采用ssop20封装,内部封装有发送编码器,调制器,接收器和解调器,典型发送功率200mw,有idle、power down、full power三种电源管理功能。它提供给用户数字接口的信号线为din、dout、sclock,通过这三根线可完成控制器与ri-r6c-001a芯片之间的数据传输。当ri-r6c-001a要发送数据时,时钟由单片机控制,当它要接收数据时,时钟由该芯片控制。 dout除了在接收数据期间有把接收到的数据输出给单片机的功能外,还用来表征ri-r6c-001a内部fifo的情况。dout内部下拉,平时为低电平。输入数据过程中,当ri-r6c-001a的16位fifo寄存器满时,dout线会自动跳变为高电平,直到fifo寄存器空,dout线又会跳变为低电平。在软件设计时单片机每发一位数据都要检测dout的状态。在dout为高电平期间,输入数据无效。
射频电路由三大部分组成(见图4):ri-r6c-001a应用电路,与单片机相连的接口电路,天线发送。接收电路:在ri-r6c-001a应用电路中,l1、l2、c2组成的t型网络以及l3、c9组成的lc网络都是起到滤波的效果,使ri-r6c-001a通过天线接收的数据不至于流向发送端tx-out,因为此芯片发送数据时频率是13.56mhz,而接收的信号的载波频率是13.56mhz/28和13.56mhz/32(fm)或者13.56mhz/32(am),r-mod端的电阻r2决定发送信号的调制深度;r3、l4、c10、c11组成串联谐振电路,匹配阻抗50 ,可调电容c11用来准确调整电路谐振点在13.56mhz。这一设计有利于阅读器正确的收发信息。
系统工作过程
接收数据过程
单片机与ri-r6c-001a之间通信必须遵循tag-it协议或iso/iec 15693,其中tag-it是ti公司最新开发的rfid transponder(应答器)的注册商标,是一个产品系列。tag-it完全和iso/iec15693兼容,tag-it应答器与阅读器之间是半双工通信,首先阅读器主动发一个请求(包含命令和参数),应答器被动发一个应答(包含发送的数据和状态)。 在软件设计上必须让单片机发送数据和接收数据满足ri-r6c-001a的通信要求。由单片机发给ri-r6c-001a的命令序列必须符合以下格式:
s1表示传输开始,长度为1位;cmd表示命令字节,长度为8位或1位,8位用于普通模式,1位用于寄存器模式;es1表示传输停止。命令字节:规定ri-r6c-001a与应答器通信时的有关参数,例如:支持的射频协议,调制方式,调制深度,波特率等。普通模式在每次通信时命令序列中都要包含使用的有关参数,而寄存器模式命令序列中并不含这些参数,而是由预先写入配置寄存器中的数值所决定;数据位是根据通信时的要求定的,数据位的顺序由iso15693-3或者tag-it协议所规定,具体采用哪一种射频协议使阅读器与应答器通信由cmd中指定, 因此数据位是任意的,且长短根据要求通信的信息而定。单片机的spi口正好能满足这一要求。由于spi口没有开始和停止位,为了满足ri-r6c-001a开始和停止位的要求,起始位是通过在启动spi口之前直接用位操作指令先对din置低,然后对sclock置高,再把din置高从而表示开始接收数据的起始位,然后启动spi接口传输数据; 停止位是通过在数据传输结束后把spi口引脚变成通用的i/o引脚,用位操作指令先把din、sclock置高,再把din置低,表示传输数据结束。数据位:ri-r6c-001a接收单片机发来的数据时是在每个时钟sclock的上升沿锁存数据,并且要求数据位的值必须被建立且sclock为高电平时数据保持不变,也就是说要求单片机在时钟的下降沿送出数据,在时钟的上升沿数据是稳定的,可供阅读器对输入的数据进行锁存,因此对控制器spi口相关寄存器sspcon和sspstat进行适当设置就可以满足此要求。
数据传送
单片机要接收ri-r6c-001a发过来的数据,首先在时序上必须满足ri-r6c-001a发送数据时序的要求,见图5。发送数据时,是在每个时钟的上升沿送出数据,在每个时钟的下降沿数据稳定,因此单片机应该在时钟的下降沿采样数据,这同样可以通过设置sspcon和sspstat寄存器来实现。
时钟切换
需要注意的是,当单片机由发送转换为接收过程中,它同时由主动转化为被动,由发送时钟转换为接收时钟,这里有时钟切换问题,应满足图6所示时序图关系。
由时序图知当单片机传输数据es1结束后(在a时刻)把spi用到的引脚设置为通用i/o引脚,要进行时钟的切换,在第一个tran期间,通过位操作指令先把sclock=0,再让din引脚出现一个正脉冲(b时刻到c时刻),单片机就把时钟控制权交给了ri-r6c-001a,d时刻表明在ri-r6c-001a控制sclock的时间内din引脚为高电平,注意在阅读器给单片机送数据时,din引脚一直保持高电平,一旦它不再送数据,同时也不再送时钟, 在编程时可以检测单片机的时钟输入端是否由时钟输入,从而决定阅读器是否还在给单片机发送数据。当阅读器控制sclock时,它将发送一个s2对应于应答器发送过来的sof,2bit数据和一个es2对应于应答器发送过来的eof。在第二个tran期间可再次通过位操作指令让din引脚上产生一个正脉冲,此时单片机就收回了控制权,然后按第一次发数据的方式发数据。 在单片机接收dout引脚上数据的过程中,通过对单片机中与spi接口有关的寄存器的设置,可以让单片机在输入的每位数据的有效时间中间采样数据,这一设置正好与ri-r6c-001a输出数据的时序相吻合,注意在每次时钟切换的过程中,sclock都是为低电平的。
结束语
通过利用pc机,仿真器以及mplab ice集成开发环境完成了软件的调试,软件的主要功能包括:从单片机发送符合ri-r6c-001a所要求的命令,数据。ri-r6c-001a收到这些数据进行处理,加上sof和eof后,以请求的形式发送给应答器,并接收应答器以应答的形式发来的数据,进行处理后再通过输出引脚dout 送给单片机,在编程时采用了模块式的结构,利用pic16f87x汇编和c语言进行写的程序。
该系统经过测试,已经可以使用,如果硬件和软件设计合理,进一步提高其可靠性和安全性,再加上成本低廉、读写电路简单,应用必然会更加广泛。
防爆、防盐雾等特殊环境下,定制化工业交换机有哪些优势?
EMC概述(3)——什么是电磁兼容性(EMC)?
PoE交换机vs普通交换机的区别在哪里?
DCS系统在垃圾焚烧中的应用
中国测序市场增速明显,预计2022年将突破150亿元
采用射频标签多协议芯片实现RFID阅读器的设计
HTC证实裁员是什么情况?HTC针对北美员工裁员百人 HTC为什么要裁员
6月9日,光亚展雷达炫酷“芯”体验
水下仿生扑翼机器人的驱动控制研究
浅谈固体柜推广营销的情况下会受制约的层面
安科瑞ARTU遥信单元多回路开关控制装置
手机摄影-华为P10更显艺术范儿!
关于热处理分布式监控系统理念和实施
有源负载基本知识
关于智慧餐厅的方案设计的说明和解读
什么是 DDR5?SDRAM 技术发展历程
魅族MX6促销:售价1299元
AEC-Q200各种实施标准检测介绍
手机锂电池保护板测试可选用大电流弹片微针模组
LoRaWAN终成全球物联网标准;利尔达与Everynet达成战略合作