前言
隨著電子技術的飛速發展 ,計算機應用的普及,計算機與計算機,計算機與數據終端,以及數據終端與數據終端之間的數據傳輸與通信的應用也日益廣泛。從工業控制,軍事應用,到醫療儀器,家用電器,到處都涉及到數據通信和數據傳輸的技術。目前這些數據傳輸主要有無線和有線這兩種方式。有線方式由于它的傳統性而在現代的數據傳輸領域占據著主要地位。而無線方式的出現彌補了有線傳輸的部分缺陷,如線路的成本等。FPGA(FieldProgrammable Gate Array現場可編程門陣列)是一種高密度的可編程邏輯器件,其編程靈活,可在系統編程中通過寫入不同的配置數據即可實現不同的邏輯功能。基于 FPGA設計的產品集成度高、體積小、功耗低、開發周期短,現在很多應用產品都是基于 FPGA的開發。對于應用系統而言,只要拿出 FPAG其中的一部分區域完成特定的專項工作,并不影響其他部分的工作,模塊之間具有相互獨立性。
1 系統結構
系統分為接收和發射兩部分,使用非編碼的無線發射模塊和接收模塊進行無線數據的傳輸,發送和接收部分各自具有獨立的邏輯模塊進行編碼或解碼,可以和系統其他部分進行數據交互,如圖 1。
2.5數據接收過程
根據發送脈沖寬度,很容易判斷信號高低電平,接收采用檢測電平時間的方法來判斷0、1數據,過程如下:
①接收到輸入信號變化,重置計數器計數以判斷前導信號,這里時間判斷需要有個裕度,本來是 0.6ms的信號,判斷在 0.3ms—0.9ms是正確的,其他的丟棄處理,如果是有兩個以上的前導信號就進入引導信號的判斷;
②判斷引導信號是不是1.8ms,此處裕度判斷為1.5ms--2.1ms;如果此信號正確,進入數據接收,否則返回空閑態;
③數據接收:數據‘0’判斷 0.3ms—0.9ms是正確的,數據‘1’ 判斷 0.9ms—1.5ms 是正確的,并將判斷所得數據暫放臨時變量對應的位空間,過程中如果出現錯誤則作丟棄整個數據處理,返回空閑態;
④數據接收完成后,接收引導信號,該信號如果判斷為 1.8ms即以 1.5ms--2.1ms為準則,則完成數據的接收,將暫存數據輸出,否則,整個數據丟棄處理,返回空閑態。
3 實例仿真
非編碼無線模塊硬件連接只需要電源、地、信號(發射模塊對應輸出,接收模塊對應輸入)三根線的電氣連接,使用非常方便。其中要注意的問題就是電源的濾波,因為無線模塊極易受到干擾,也容易干擾外界,所以對模塊的供電要經過一定的處理,一般的方法是通過LC網絡(電感電容網絡)對系統電源進行濾波后再對無線模塊供電。試驗表明濾波電路的有無對數據傳輸的可靠性有比較大的影響。
對 FPGA的程序可以使用 VHDL語言,Verilog語言,AHDL語言以及圖形等方法進行設計,而在用 VHDL語言的設計中,有限狀態機的使用使設計控制的靈活性和高速運算性能大大提高,而且程序的結構清晰明了。
根據無線模塊的編碼原則與算法,使用 VHDL語言實現狀態機,完成無線發射模塊數據編碼發送的主體程序如下:
圖 3為數據編碼發送時序仿真圖形,所發送的數據為十六進制的 19H和99H。
根據無線模塊數據接收的解碼方法,使用 VHDL語言實現狀態機,完成無線接收模塊數據解碼的主體程序如下:
圖 4為數據接收解碼時序仿真圖形,接收數據為十六進制的 19H和99H。如果在接收數據人為加入干擾,這種方式可以有效地將干擾濾除。
4結論
實驗表明,數據可以通過無線模塊使用此編解碼方式進行正確傳輸,減少了零電平干擾的影響,而且,此種編解碼方法實現靈活簡單,占用資源少,具有獨立性,電路簡潔。設計是 8位數據的編碼發送與接收的系統模塊,也適合于單片機等 8位處理器接口,當然這種設計可以很方便的擴展為 16位或32位等,并增加校驗位,提高數據的吞吐速度以及數據傳輸的可靠性,也可以增加地址的編碼,實現單一的點對點通信。
-
FPGA
+關注
關注
1630文章
21759瀏覽量
604292 -
無線
+關注
關注
31文章
5462瀏覽量
173481 -
計算機
+關注
關注
19文章
7519瀏覽量
88204
發布評論請先 登錄
相關推薦
評論