RFIDlogo
上海营信信息热线
 
产品介绍 / Product
数据采集与打印
平板电脑
GPS 设备
RFID读写器
工业传感器
电子标签
RFID天线
解决方案 / Solution
图书档案
电力行业
制造行业
零售行业
医疗卫生
车辆管理
人员管理
技术与支持 / Service support
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系列是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读写器和应用方案PDF电子版彩页
上一篇:RFID读写器和电子标签的防冲突机制介绍
下一篇:ISO15693的防冲突与传输协议
公司简介
·公司介绍
·企业文化
·法律声明
·合作伙伴
·典型案例
产品介绍
·数据采集与打印
·平板电脑
·GPS 设备
·RFID读写器
·工业传感器
·电子标签
解决方案
·图书档案
·电力行业
·制造行业
·零售行业
·医疗卫生
·车辆管理
资料下载
·RFID知识
·演示软件下载
·开发包下载
·电子资料下载
联系我们
请联系销售顾问
手机:13817779536
邮箱:sales@rfidhb.com
地址:上海市恒南路1328号派拉蒙留学生创业园一号楼502室
上海营信信息名片
扫描加销售顾问微信
友情链接: 读写器 | RFID设备 | 超高频手持机 | 智能档案柜 | 智能工具柜 | 机要文件 | RFID智能柜 | RFID读写器 | 档案柜 | R2000 | 超高频手持机 | R2000读写器 | 智能工具柜 | 超高频读写器 | 智能工具 | RFID手持机 | 高值耗材 | 超高频标签 | RFID电子标签 | 工器具 | 智能图书柜 | 智能工具柜 | RFID资产管理 |
sitemap备案号:沪ICP备11007100号-15 版权所有: 上海营信信息技术有限公司