當(dāng)前位置:首頁(yè) > 通信技術(shù) > 通信設(shè)計(jì)應(yīng)用
[導(dǎo)讀]  隨著計(jì)算機(jī)技術(shù)的迅速發(fā)展,電子信息技術(shù)越來(lái)越快地普及到各行各業(yè)的應(yīng)用中去。傳統(tǒng)的物流信息采集工作方式是通過(guò)工作人員將票物進(jìn)行核對(duì),然后將票上的數(shù)據(jù)輸入到計(jì)算機(jī)中。這一過(guò)程費(fèi)時(shí)費(fèi)力,并且可能由于各種

  隨著計(jì)算機(jī)技術(shù)的迅速發(fā)展,電子信息技術(shù)越來(lái)越快地普及到各行各業(yè)的應(yīng)用中去。傳統(tǒng)的物流信息采集工作方式是通過(guò)工作人員將票物進(jìn)行核對(duì),然后將票上的數(shù)據(jù)輸入到計(jì)算機(jī)中。這一過(guò)程費(fèi)時(shí)費(fèi)力,并且可能由于各種人為過(guò)失造成各種各樣錯(cuò)誤數(shù)據(jù)的存在,影響所采集信息的可靠性。而自動(dòng)識(shí)別技術(shù)利用計(jì)算機(jī)進(jìn)行自動(dòng)識(shí)別,增加了輸入的靈活性與準(zhǔn)確性,使人們擺脫繁雜的統(tǒng)計(jì)識(shí)別工作,并且大大提高了物流信息采集的工作效率。目前,由沃爾瑪、麥德隆等大超市一手推動(dòng)的RFID應(yīng)用,為零售業(yè)帶來(lái)包括降低勞動(dòng)力成本、商品的可視度提高,降低因商品斷貨造成的損失,減少商品偷竊現(xiàn)象等好處。其可應(yīng)用的過(guò)程包括:商品的銷(xiāo)售數(shù)據(jù)實(shí)時(shí)統(tǒng)計(jì),補(bǔ)貨,防盜等。本文利用RFID技術(shù),用FPGA芯片與NRF905搭建了無(wú)線通信系統(tǒng),成功的實(shí)現(xiàn)了無(wú)線收發(fā)數(shù)據(jù)。

  1 系統(tǒng)設(shè)計(jì)

  1.1 RFID簡(jiǎn)介

  RFID(Radio Frequency IdenTIficaTIon,射頻識(shí)別技術(shù))是利用無(wú)線電波對(duì)記錄媒體進(jìn)行讀/寫(xiě)。射頻識(shí)別的距離可達(dá)幾十厘米至幾米,且根據(jù)讀/寫(xiě)的方式,可以輸入數(shù)千字節(jié)的信息,同時(shí),還具有極高的保密性。射頻識(shí)別技術(shù)適用的領(lǐng)域:物料跟蹤、運(yùn)載工具和貨架

  識(shí)別等要求非接觸數(shù)據(jù)采集和交換的場(chǎng)合,要求頻繁改變數(shù)據(jù)內(nèi)容的場(chǎng)合尤為適用。如香港的車(chē)輛自動(dòng)識(shí)別系統(tǒng)駕易通,采用的主要技術(shù)就是射頻技術(shù)。射頻技術(shù)在其他物品的識(shí)別自動(dòng)化管理方面也得到了較廣泛的應(yīng)用。

  如圖1所示即為本無(wú)線系統(tǒng)的整個(gè)構(gòu)架,由控制模塊,SPI模塊以及天線模塊構(gòu)成。其中對(duì)SPI模塊的配置由控制模塊通過(guò)Wishbone總線來(lái)完成,并且對(duì)天線模塊的配置,模式轉(zhuǎn)換,收發(fā)數(shù)據(jù)等操作均由控制模塊通過(guò)SPI總線來(lái)完成。下面將就各個(gè)部分進(jìn)行說(shuō)明。

  

  1.2 天線模塊(NRF905收發(fā)模塊)

  1.2.1 NRF905介紹

  NRF905是挪威Nordic公司推出的單片射頻發(fā)射器芯片,工作電壓為1.9~3.6 V,32引腳QFN封裝,工作于433/868/915MHz三個(gè)ISM頻道??梢宰詣?dòng)完成處理字頭和CRC(循環(huán)冗余碼校驗(yàn))的工作,可由片內(nèi)硬件自動(dòng)完成曼徹斯特編碼/解碼,使用SPI接口與微控制器通信,配置方便,功耗低,以-10 dBm的輸出功率發(fā)射時(shí)電流只有11 mA,在接收模式時(shí)電流為12.5 mA。

  NRF905有ShockBurst接收與ShockBurst發(fā)送兩種工作模式;掉電和SPI編程與Standby和SPI編程兩種節(jié)電模式。其ShoekBurst工作模式的特點(diǎn)是自動(dòng)產(chǎn)生前導(dǎo)碼和CRC,可以通過(guò)SPI接口進(jìn)行編程配置。NRF905的工作模式由對(duì)TRX_CE,TX_EN,PWR_UP的設(shè)置來(lái)設(shè)置,見(jiàn)表1。

  

  1.2.2 NRF905配置與工作過(guò)程

  nRF905的所有配置都通過(guò)SPI接口進(jìn)行。SPI接口由5個(gè)寄存器組成,一條SPI指令用來(lái)決定進(jìn)行什么操作。SPI接口只有在掉電模式和Standby"模式是激活的。

  其中SPI接口的5個(gè)寄存器分別為:

  (1)狀態(tài)寄存器:寄存器包含數(shù)據(jù)就緒DR和地址匹配AM狀態(tài)。

  (2)RF配置寄存器:寄存器包含收發(fā)器的頻率、輸出功率等配置信息。

  (3)發(fā)送地址:寄存器包含目標(biāo)器件地址,字節(jié)長(zhǎng)度由配置寄存器設(shè)置。

  (4)發(fā)送有效數(shù)據(jù):寄存器包含發(fā)送的有效Shock Burst數(shù)據(jù)包數(shù)據(jù),字節(jié)長(zhǎng)度由配置寄存器設(shè)置。

  (5)接收有效數(shù)據(jù):寄存器包含接收到的有效ShockBurst數(shù)據(jù)包數(shù)據(jù),字節(jié)長(zhǎng)度由配置寄存器設(shè)置。在寄存器中的有效數(shù)據(jù)由數(shù)據(jù)準(zhǔn)備就緒DR指示。

  ShoekBurst技術(shù)使nRF905能夠提供高速的數(shù)據(jù)傳輸,而不需要高速控制器來(lái)進(jìn)行數(shù)據(jù)處理或時(shí)鐘覆蓋。通過(guò)將與RF協(xié)議有關(guān)的高速信號(hào)處理放到芯片內(nèi),nRF905提供給應(yīng)用控制器一個(gè)SPI接口,速率由微控制器自己設(shè)定的接口速度決定。nRF905通過(guò)ShockBurst工作模式在RF以最大速率進(jìn)行連接時(shí)降低數(shù)字應(yīng)用部分的速度來(lái)降低在應(yīng)用中的平均電流消耗。在ShockBurst RX(接收)模式中,地址匹配AM和數(shù)據(jù)準(zhǔn)備就緒DR信號(hào)通知控制器一個(gè)有效的地址和數(shù)據(jù)包已經(jīng)各自接收完成。在ShockBurst TX(發(fā)送)模式中,nRF905自動(dòng)產(chǎn)生前導(dǎo)碼和CRC校驗(yàn)碼,數(shù)據(jù)

  準(zhǔn)備就緒DR信號(hào)通知控制器數(shù)據(jù)傳輸已經(jīng)完成。

  1.3 SPI模塊

  1.3.1 SPI總線介紹

  SPI(Serial Parallel Bus)總線是Motorola公司提出的一個(gè)同步串行外設(shè)接口,容許CPU與各種外圍接口器件,以串行方式進(jìn)行通信。它使用4條線:串行時(shí)鐘線(SCK)、主機(jī)輸入/從機(jī)輸出線(MISO)、主機(jī)輸出/從機(jī)輸入線(MOSI)、低電平有效的使能信號(hào)線(SS)。這樣,僅需3~4根數(shù)據(jù)線和控制線即可擴(kuò)展具有SPI接口的各種I/0器件。

  SPI總線模式的數(shù)據(jù)是以字節(jié)為單位進(jìn)行傳輸?shù)?一次傳輸可以傳多個(gè)字節(jié)),每字節(jié)為8位,每個(gè)命令或者數(shù)據(jù)塊都是字節(jié)對(duì)齊的(8個(gè)時(shí)鐘的整數(shù)倍)。數(shù)據(jù)按位傳輸,高位在前,地位在后,為全雙工通信,數(shù)據(jù)傳輸速度總體來(lái)說(shuō)比I2C總線要快,速度可達(dá)到每秒幾兆比特。SPI接口是以主從方式工作的,這種模式通常有一個(gè)主器件和一個(gè)或多個(gè)從器件。在本文設(shè)計(jì)的無(wú)線通信系統(tǒng)中,由FPGA實(shí)現(xiàn)的SPI總線接口模塊為主機(jī),NRF905的SPI模塊為從機(jī)。

  SPI時(shí)序模式的選擇:

  SPI接口有4種不同的數(shù)據(jù)傳輸時(shí)序,取CPOL和CPHL這兩位的組合。CPOL是用來(lái)決定SCK時(shí)鐘信號(hào)空閑時(shí)的電平;CPOL=O,空閑電平為低電平,CPOL=1時(shí),空閑電平為高電平。CPHA是用來(lái)決定采樣時(shí)刻的,CPHA=0,在每個(gè)周期的第一個(gè)時(shí)鐘沿采樣;CPHA=1,在每個(gè)周期的第二個(gè)時(shí)鐘沿采樣。

  圖2為NRF905的SPI接口的時(shí)序圖,由此本文設(shè)計(jì)的SPI工作模式是在CPOL=O,CPHA=O這種時(shí)序下。

  

  1.3.2 SPI硬件設(shè)計(jì)

  圖3是本文無(wú)線通信系統(tǒng)中SPI模塊的結(jié)構(gòu)圖,該系統(tǒng)中的SPI主要由時(shí)鐘生成模塊,SPI寄存器組,SPI功能配置的模塊組成,并且通過(guò)Wishbone總線與控制器相連,具體設(shè)計(jì)如下:

  時(shí)鐘生成模塊:由于SPI模塊是基于FPGA來(lái)實(shí)現(xiàn)的,而FPGA外部提供的時(shí)鐘較快(50 MHz或100 MHz),不適合與NRF905的SPI接口進(jìn)行通信

  (1 Hz~10 MHz),所以需要分頻來(lái)使時(shí)鐘慢下來(lái)。但是至于幾分頻是由SPI功能配置模塊來(lái)完成的。其次由于SPI協(xié)議指出數(shù)據(jù)可在上升沿或下降沿觸發(fā),所以還需要對(duì)時(shí)鐘的上升沿或下降沿進(jìn)行鑒別(也稱(chēng)抓沿程序),這個(gè)功能也由這個(gè)模塊完成。

  

  SPI寄存器模塊:這個(gè)模塊實(shí)現(xiàn)的是一個(gè)由16個(gè)8位寄存器組成的128位的寄存器組,也就是說(shuō)通過(guò)SPI接口一次性可收發(fā)8~128位的串行數(shù)據(jù)。具體操作由SPI功能配置模塊來(lái)完成。

  SPI功能配置模塊:這個(gè)模塊相當(dāng)于一個(gè)SPI控制器,通過(guò)對(duì)其寄存器的配置來(lái)決定時(shí)鐘的分頻數(shù),收發(fā)數(shù)據(jù)位數(shù),時(shí)鐘上升沿或下降沿傳輸數(shù)據(jù)等,而對(duì)這些寄存器的配置是由控制模塊完成的。下面就配置寄存器做一些簡(jiǎn)要說(shuō)明。

  首先介紹控制寄存器:

  控制寄存器第O位go:是否開(kāi)始發(fā)送。

  控制寄存器第1位rx_negedge:接收數(shù)據(jù)是下降沿還是上升沿。

  控制寄存器第2位tx_negedge:發(fā)送數(shù)據(jù)是下降沿還是上升沿。

  控制寄存器第3~9位char_len:發(fā)送數(shù)據(jù)的位數(shù)(因?yàn)镾PI是全雙工的,所以這實(shí)際上也是接收數(shù)據(jù)的位數(shù))。

  控制寄存器第10位lsb:是從高位發(fā)送還是地位發(fā)送。

  控制寄存器第11位ie:讀寫(xiě)完成之后是否發(fā)送中斷信號(hào)。

  控制寄存器第12位ass:是否自動(dòng)產(chǎn)生片選信號(hào)。

  分頻寄存器:spi_divider_sel。

  狀態(tài)寄存器:spi_ctrl_sel。

  數(shù)據(jù)寄存器O:spi_tx_sel[0]。

  數(shù)據(jù)寄存器1:spi_tx_sel[1]。

  數(shù)據(jù)寄存器2:spi_tx_sel[2]。

  數(shù)據(jù)寄存器3:spi_tx_sel[3]。

  片選信號(hào)寄存器:spi_ss_sel。

  1.4 控制模塊

  對(duì)于控制模塊來(lái)說(shuō),其實(shí)現(xiàn)方法是利用基于Verilog語(yǔ)言的有限狀態(tài)機(jī)來(lái)實(shí)現(xiàn),相當(dāng)于一條一條的指令來(lái)控制SPI模塊接收發(fā)送數(shù)據(jù)。控制模塊分成三個(gè)獨(dú)立的部分即接收控制模塊、發(fā)送控制模塊及NRF905配置模塊。其中接收與發(fā)送控制模塊分別包含對(duì)SPI進(jìn)行配置的狀態(tài)。下面對(duì)接收控制模塊的設(shè)計(jì)進(jìn)行說(shuō)明。圖4即為Debussy綜合出的狀態(tài)機(jī)轉(zhuǎn)換圖。

  

  為了完成無(wú)線通訊而設(shè)計(jì)的狀態(tài)較多,比較復(fù)雜,故只對(duì)比較重要的狀態(tài)做些簡(jiǎn)要說(shuō)明。idle空閑狀態(tài),完成對(duì)端口進(jìn)行初始化寄存器清零;config_div狀態(tài),對(duì)時(shí)鐘進(jìn)行分頻(定義sclk);configwb_in狀態(tài),定義傳輸數(shù)據(jù)的位數(shù)以及是上升沿收發(fā)還是下降沿收發(fā),wb_inl,wb_in2,wb_in3,wb_in4,這四個(gè)狀態(tài)就是通過(guò)Wishbone總線接口對(duì)SPI配置要寫(xiě)的數(shù)(每一個(gè)狀態(tài)對(duì)應(yīng)一個(gè)寄存器);configspi_out狀態(tài),開(kāi)始傳送數(shù)據(jù);done狀態(tài),片選置高數(shù)據(jù)傳送完成;readeonfigreg_prel狀態(tài),設(shè)定發(fā)送數(shù)據(jù)位數(shù);readconfigreg(讀寄存器控制字位數(shù))狀態(tài),通過(guò)Wishbone總線接口對(duì)SPI配置讀命令字;readconfigreg_out狀態(tài),設(shè)定發(fā)送/接收數(shù)據(jù)位;alldone狀態(tài),片選置高完成配置數(shù)據(jù)讀取的過(guò)程。

  該設(shè)計(jì)考慮到驗(yàn)證配置過(guò)程的正確性,故特意設(shè)定了讀寄存器配置數(shù)據(jù)的狀態(tài),ehangemode就是接收狀態(tài),當(dāng)接收完成后(DR=1)進(jìn)入eh-angmodee狀態(tài),把收到的數(shù)據(jù)讀出來(lái)。然后再回到readeonfigreg_prel狀態(tài),等待新的傳輸數(shù)據(jù)。

  2 系統(tǒng)驗(yàn)證

  該設(shè)計(jì)最后進(jìn)行了板級(jí)驗(yàn)證,F(xiàn)PGA開(kāi)發(fā)板與NRF905的PCB板構(gòu)成這個(gè)驗(yàn)證系統(tǒng)。FPGA芯片的采用Xilinx公司的XC2V1000,所用的綜合工具是Synplify,前仿真與后仿真用來(lái)查看波形的工具是Modelsim,所用到的布局布線工具與下載工具是ISE10.1集成的iMPACT,而板級(jí)測(cè)試用來(lái)查看波形的工具是Chipseope。

  在下載之前對(duì)本設(shè)計(jì)進(jìn)行了充足的功能仿真,用Verilog編寫(xiě)了SPI從機(jī)模仿NRF905的SPI接口與SPI主機(jī)進(jìn)行通信,確保能夠完成預(yù)先設(shè)定的功能。

  下載是將配置文件下載到具體的FPGA芯片中。本文系統(tǒng)中采用的是JTAG下載方式,下載工具使用Xilinx ISE的集成工具iMPACT。在下載之前進(jìn)行了管腳綁定其目的就在于能夠?qū)⒃O(shè)計(jì)的輸入/輸出端口約束在FPGA芯片的合適的引腳上,以方便對(duì)其進(jìn)行分析和調(diào)試并與外界I/O進(jìn)行相連。下面即為本設(shè)計(jì)中相應(yīng)的管腳約束文件中的相關(guān)內(nèi)容。

  

  下載完成后,依照管腳綁定將FPGA開(kāi)發(fā)板與NRF905的PCB相連,圖5即為無(wú)線收發(fā)的PCB連接圖。

  

  這只是其中一端,在這里假定為接收端,那么另外還有一樣的互連PCB板作為發(fā)送端。右邊的PCB板為FPGA用來(lái)實(shí)現(xiàn)SPI模塊與控制模塊。左上倒凸字形的小PCB板即為NRF905,左邊的PCB板起到了連接FPGA與NRF905的左右,并給NRF905提供電源。

  系統(tǒng)建立起來(lái)后,下一步是最終的板級(jí)驗(yàn)證。圖6為用Chipscope得到的波形圖。mosi與miso分別是發(fā)送端與接收端SPI總線上的信號(hào)。從圖中可以看出數(shù)據(jù)基本吻合,由此表明設(shè)計(jì)的以FPGA控制NRF905的無(wú)線通信系統(tǒng)能夠正常工作。

  

  3 結(jié)語(yǔ)

  本文實(shí)現(xiàn)了以FPGA控制NRF905的無(wú)線通信系統(tǒng),通過(guò)對(duì)系統(tǒng)的建立與仿真測(cè)試以及板級(jí)驗(yàn)證,證明了無(wú)線通信系統(tǒng)能夠正常工作,而且無(wú)線系統(tǒng)通信距離可達(dá)100 m,基本完成了無(wú)線系統(tǒng)通信的要求,充分說(shuō)明該設(shè)計(jì)系統(tǒng)的實(shí)用性。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉