新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM與射頻芯片TRF796x的SPI通信研究

ARM與射頻芯片TRF796x的SPI通信研究

作者: 時(shí)間:2011-01-17 來(lái)源:網(wǎng)絡(luò) 收藏

②寫(xiě)地址,從圖1和圖3的時(shí)序可以看出,要讀TRF796x的寄存器值,必須包含一個(gè)寫(xiě)地址周期和一個(gè)讀數(shù)據(jù)周期。在寫(xiě)TRF796x的地址之前,必須先設(shè)置SPCON0的CPOL和CPHA都為O,這樣通信雙方的時(shí)序才能保持一致,而且要將地址字節(jié)的最高3位設(shè)為010,然后將地址字節(jié)寫(xiě)入發(fā)送移位寄存器SPTDAT0中,一旦地址字節(jié)發(fā)送完,TRF796x就會(huì)把相應(yīng)地址的內(nèi)容送到MISO腳上。
③讀數(shù)據(jù),在地址字節(jié)寫(xiě)入后,讀數(shù)據(jù)之前,必須轉(zhuǎn)換SCK的時(shí)鐘極性,從圖1可以看出,需要設(shè)置CPOL為0,CPHA為1,這樣就滿(mǎn)足了TRF796x的讀時(shí)序要求。寫(xiě)數(shù)據(jù)0x00或0xFF到SPTDAT0中,接著就可以從SPRDAT0中讀取數(shù)據(jù)。
非連續(xù)讀操作的實(shí)現(xiàn)代碼如下:
j.JPG

為了驗(yàn)證上述的程序,在按照?qǐng)D4連接電路后,可以選擇讀取TRF7960的09h、0Ah、0Bh寄存器單元的內(nèi)容,這3個(gè)寄存器在系統(tǒng)上電時(shí),分別默認(rèn)內(nèi)容為0x11、0x40、0x87。定義一個(gè)數(shù)組 Operation[O]=0x09;Operation[1]=0x0A;Operation[2]=0x0B;調(diào)用函數(shù) SingleRead(Operation,3);即可得到3個(gè)寄存器的內(nèi)容并存放在Operation數(shù)組中。在RFID門(mén)禁系統(tǒng)的開(kāi)發(fā)中,就是采用了這種SPI通信方式實(shí)現(xiàn)了對(duì)RFID閱讀器芯片的訪問(wèn)控制。

結(jié)語(yǔ)
本文通過(guò)介紹芯片與TRF796x之間的硬件SPI通信方式,說(shuō)明了在進(jìn)行SPI器件之間通信時(shí)應(yīng)該注意的問(wèn)題,強(qiáng)調(diào)工作時(shí)序在通信時(shí)的重要性,最后給出的程序在RFID門(mén)禁系統(tǒng)中得到了運(yùn)用。論文研究對(duì)與其他SPI器件之間的通信有一定的參考意義,只要根據(jù)SPI器件的工作時(shí)序進(jìn)行稍加修改就能融會(huì)貫通。

本文引用地址:http://butianyuan.cn/article/151079.htm

上一頁(yè) 1 2 3 4 下一頁(yè)

關(guān)鍵詞: ARM 德州儀器

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉