9191国语精品高清在线_欧美极品欧美精品欧美视频_中文字幕一区二区三三_图片区亚洲欧美小说区

上海浩斌信息,讀寫器,電子標簽,倉儲管理
上海電力倉庫軟件
RFID新聞資訊
您現在的位置是:首 頁 > 技術與支持 > RFID相關知識
基于TRF7960的多協議讀寫器設計
RFID應用多種多樣,每個不同的應用都需要選擇不同的產品,請聯系我們的銷售顧問獲取合適的產品和方案。

    無線射頻識別技術(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讀寫器和應用方案PDF電子版彩頁

主站蜘蛛池模板: 修水县| 桑植县| 罗甸县| 广平县| 乌拉特后旗| 四子王旗| 侯马市| 格尔木市| 陕西省| 义乌市| 定西市| 蚌埠市| 屏边| 积石山| 敦煌市| 建水县| 元谋县| 河南省| 葵青区| 永清县| 门源| 固阳县| 阿瓦提县| 嵊泗县| 抚宁县| 眉山市| 曲阳县| 四会市| 离岛区| 海伦市| 静安区| 金门县| 株洲市| 托克逊县| 中超| 财经| 蓬溪县| 邻水| 禹州市| 钦州市| 涡阳县|