上海浩斌信息logo
上海浩斌信息热线
 
产品中心 / Product
手持机
超高频读写器
高频读写器
RFID通道门
电子标签
RFID天线
解决方案 / Solution
图书档案
仓储物流
考勤签到
智能交通
工业制造
商业零售
技术与支持 / Service
RFID相关知识
RFID协议
开发包下载
电子资料下载
方案下载
驱动及工具软件
  RFID相关知识 首页 > 技术与支持 > RFID相关知识
 

基于TRF7960的多协议读写器设计

发布时间:2015-10-6 14:09:07

    无线射频识别技术(RFID)作为一种先进的自动识别和数据采集技术,已经广泛应用到物流仓储、小额支付、会员管理、生产制造、公共安全等各个领域,并带动了读写器和各类应用产品及系统的开发、生产和应用。目前,在我国应用于13.56MHz的无线射频识别技术领域主要有2个ISO标准,一个是IS014443,另一个是ISO15693。ISO14443定义了TYPEA、TYPEB两种类型协议,通信速率为106kb/s,它们的区别主要在于载波的调制深度及位的编码方式。ISO15693读写距离较远,而ISO14443读写距离稍近,但后者应用较广泛。这三种协议的卡在各个领域都有着比较广泛的应用,而国内现有的13.56MHz的射频读卡器,一般仅支持一种协议,且功能较为单一。

基于TRF7960的多协议读写器设计

    TRF7960系列是TI推出的载波为13.56MHz、支持ISO15693、ISO14443A/B和FeliCa协议的射频接口芯片。许多人更关心它能不能读写MF1卡片,就我的理解及实际验证,由于MF1在卡选择之前的操作是遵守ISO14443A协议的,之后的卡验证和卡数据读写都是NXP自己的保密协议,所以TRF7960可以对MF1卡执行到卡选择操作,或者通俗的说可以读MF1的卡片序列号,但不能对MF1卡读写数据,除非开发者自己知道NXP的加密协议并自己编写代码实现该协议。

    在TI官方公开的TRF7960说明书中,有详细的参考电路及基于MSP430单片机的参考代码,参考这些资料做自己的开发板或者产品板基本上难度不大。MCU可以使用并口或SPI串口操作TRF7960,并口相对简单一些,SPI通信则有一些问题需要特别注意。

    首先,TI给出的SPI参考代码使用的是MSP430的内置SPI接口,我们实际开发中因为单片机内部资源或引脚分配限制往往需要软件模拟SPI通讯。TRF7960的SPI协议规定:

不通讯的时候,片选NSS保持高电平,时钟CLOCK保持低电平,通讯的时候NSS保持低电平。

主机向TRF7960写一位数据时,在CLOCK为低电平期间根据数据的值设置MOSI数据线,然后CLOCK上升沿通知TRF7960可以接收数据,CLOCK下降沿后继续准备下一位要发送的数据,代码如下:

      for(j=8;j>0;j--)

      {

       if(((*pbuf)&0x80)==0x80)TRF796X_MOSI_HIGH;

       else           TRF796X_MOSI_LOW;

        TRF796X_SCK_HIGH;

        (*pbuf) <<= 1;

        TRF796X_SCK_LOW;

      }

主机从TRF7960读一位数据时,在CLOCK为高电平期间TRF7960根据数据的值设置MISO数据线,然后CLOCK下降沿通知MCU可以接收数据,CLOCK上升沿后继续准备下一位要发送的数据,代码如下:

      for(j=8;j>0;j--)

      {

         TRF796X_SCK_HIGH;

         _NOP();_NOP();

         TRF796X_SCK_LOW;

         (*pbuf) <<= 1;

         if(TRF796X_MISO_LOW)(*pbuf)+=1;  

       }

 

    其次,MCU可以使用Direct Command直接向TRF7960发送一字节的命令码,执行复位、进入省电模式、向卡片发送数据、调整接收电路增益等功能。Direct Command的SPI时序有一个特殊的要求,在发送完一字节的命令后,在SS拉高之前,CLOCK要多出一个上升沿,代码如下:

    SLAVE_SELECT_LOW;       

    for(j=8;j>0;j--)

    {

     if(((*pbuf)&0x80)==0x80)TRF796X_MOSI_HIGH;

     else                    TRF796X_MOSI_LOW;

        TRF796X_SCK_HIGH;

        (*pbuf) <<= 1;

        TRF796X_SCK_LOW;

    }

    _NOP(); _NOP();

    TRF796X_SCK_HIGH;

    _NOP(); _NOP();

    SLAVE_SELECT_HIGH;       

    _NOP(); _NOP();

    TRF796X_SCK_LOW;

    最后,TRF7960向磁场中的卡片发送数据后,等待卡片回应,是否收到卡片回送的数据及是否反应超时等命令的执行情况都是通过中断机制来表示的。在NXP的射频芯片中,可以不使用芯片的中断引脚IRQ而是直接查询射频芯片的中断标志寄存器来获得各种事件发生的情况,但在TRF7960中不能使用这种方式,因为读一次TRF7960的中断标志寄存器将会把寄存器中的中断标志清除,所以电路中通常要使用IRQ引脚,可以用IRQ引脚使能MCU中断或直接查询IRQ引脚,从而得知TRF7960内部发生了中断事件,进而用SPI读取其中断标志寄存器获取详细的中断事件产生情况。

 
 

RFID联系方式



 上一篇:RFID读写器和电子标签的防冲突机制介绍
 下一篇:ISO15693的防冲突与传输协议
公司简介
·公司介绍
·企业文化
·资质证书
·合作伙伴
·典型案例
产品中心
·手持机
·超高频读写器
·高频读写器
·RFID通道门
·电子标签
·RFID天线
解决方案
·图书档案
·仓储物流
·考勤签到
·智能交通
·工业制造
·商业零售
资料下载
·RFID相关知识
·RFID协议
·开发包下载
·电子资料下载
·方案下载
·驱动及工具软件
 
 
 
 
联系我们
电话:021-54332028
传真:021-54332029
邮箱:sales@rfidhb.com
地址:上海市恒南路1328号派拉蒙留学生创业园一号楼502室
 
上海浩斌信息名片
扫描公司名片
友情链接: 读写器 | 英频杰Impinj | 电力工具柜 | 智能工具柜 | RFID设备 | 超高频手持机 | 智能工具柜 | RFID | 智能档案柜 | RFID手持机 | R2000读写器 | 读写器 | 智能工具柜 | 智能柜 | 智能档案柜
sitemap 备案号:沪ICP备15044898号 版权所有: 上海浩斌信息科技有限公司