新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 基于FPGA的RFID無線通信系統的實現

        基于FPGA的RFID無線通信系統的實現

        作者: 時間:2010-10-29 來源:網絡 收藏

        為了完成無線通訊而設計的狀態較多,比較復雜,故只對比較重要的狀態做些簡要說明。idle空閑狀態,完成對端口進行初始化寄存器清零;config_div狀態,對時鐘進行分頻(定義sclk);configwb_in狀態,定義傳輸數據的位數以及是上升沿收發還是下降沿收發,wb_inl,wb_in2,wb_in3,wb_in4,這四個狀態就是通過Wishbone總線接口對SPI配置要寫的數(每一個狀態對應一個寄存器);configspi_out狀態,開始傳送數據;done狀態,片選置高數據傳送完成;readeonfigreg_prel狀態,設定發送數據位數;readconfigreg(讀寄存器控制字位數)狀態,通過Wishbone總線接口對SPI配置讀命令字;readconfigreg_out狀態,設定發送/接收數據位;alldone狀態,片選置高完成配置數據讀取的過程。
        該設計考慮到驗證配置過程的正確性,故特意設定了讀寄存器配置數據的狀態,ehangemode就是接收狀態,當接收完成后(DR=1)進入eh-angmodee狀態,把收到的數據讀出來。然后再回到readeonfigreg_prel狀態,等待新的傳輸數據。

        2 系統驗證
        該設計最后進行了板級驗證,FPGA開發板與NRF905的PCB板構成這個驗證系統。FPGA芯片的采用Xilinx公司的XC2V1000,所用的綜合工具是Synplify,前仿真與后仿真用來查看波形的工具是Modelsim,所用到的布局布線工具與下載工具是ISE10.1集成的iMPACT,而板級測試用來查看波形的工具是Chipseope。
        在下載之前對本設計進行了充足的功能仿真,用Verilog編寫了SPI從機模仿NRF905的SPI接口與SPI主機進行通信,確保能夠完成預先設定的功能。
        下載是將配置文件下載到具體的FPGA芯片中。本文系統中采用的是JTAG下載方式,下載工具使用Xilinx ISE的集成工具iMPACT。在下載之前進行了管腳綁定其目的就在于能夠將設計的輸入/輸出端口約束在FPGA芯片的合適的引腳上,以方便對其進行分析和調試并與外界I/O進行相連。下面即為本設計中相應的管腳約束文件中的相關內容。

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

        本文引用地址:http://www.104case.com/article/156991.htm


        這只是其中一端,在這里假定為接收端,那么另外還有一樣的互連PCB板作為發送端。右邊的PCB板為FPGA用來實現SPI模塊與控制模塊。左上倒凸字形的小PCB板即為NRF905,左邊的PCB板起到了連接FPGA與NRF905的左右,并給NRF905提供電源。
        系統建立起來后,下一步是最終的板級驗證。圖6為用Chipscope得到的波形圖。mosi與miso分別是發送端與接收端SPI總線上的信號。從圖中可以看出數據基本吻合,由此表明設計的以FPGA控制NRF905的無線通信系統能夠正常工作。



        3 結語
        本文實現了以FPGA控制NRF905的無線通信系統,通過對系統的建立與仿真測試以及板級驗證,證明了無線通信系統能夠正常工作,而且無線系統通信距離可達100 m,基本完成了無線系統通信的要求,充分說明該設計系統的實用性。


        上一頁 1 2 3 下一頁

        關鍵詞: 收發器

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 庆元县| 本溪市| 武威市| 安阳市| 民县| 玉门市| 洞口县| 福鼎市| 封丘县| 会理县| 尖扎县| 深圳市| 封开县| 铅山县| 广灵县| 科尔| 宣威市| 宁南县| 准格尔旗| 互助| 高密市| 集贤县| 陇川县| 修武县| 恭城| 姜堰市| 理塘县| 凌海市| 孝感市| 酒泉市| 游戏| 龙游县| 涟源市| 小金县| 定兴县| 平阳县| 江都市| 当涂县| 鄂托克前旗| 同德县| 渭南市|