国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于FPGA的飛行模擬器通信接口設計

發布時間:2014-12-17 15:42    發布者:designapp

        在飛行模擬器的設計中,為了使數據能夠快速有效地在飛行模擬器的各個模塊之間進行高速傳遞,提出了一種使用FPGA作為CAN總線節點結構中的核心處理器的設計方法,并完成了飛行模擬器通信接口的軟硬件設計。采用Verilog HDL進行編程,能夠完成對SJA1000總線控制器的有效讀寫。實際測試表明,相較于單片機作為處理器,本設計可擴展性好,易于修改和移植,能降低模擬器成本。
飛行模擬器是現代飛行員訓練的必需設備,它是一種由計算機實時控制、多系統協調工作、能模擬真實飛行環境的模擬設備。相較于利用飛機的飛行訓練而言,利用飛行模擬器的模擬飛行訓練不僅不受天氣等自然條件的制約,而且沒有后勤、機務保障以及飛行安全等因素的限制。國內外許多單位均研制了各種不同種類和規模的訓練模擬器,并取得良好的訓練效果,保證了飛行任務的圓滿完成。
在飛行模擬器的設計中,要求大量的信息能夠快速有效地在飛行模擬器的各個模塊之間進行高速傳遞,這就需要一定的通信接口協議來實現數據的交互。目前,飛行模擬器通常采用CAN總線作為通信協議,并采用單片機作為微處理器,可擴展性差。文章根據飛行模擬器的結構特點,分析了現場總線技術和FPGA技術的發展,根據飛行模擬器的實際需要和總線自身特點,選用了CAN總線來作為主機和現場設備的通信方式,并使用FPGA作為CAN總線節點結構中的核心處理器,對飛行模擬器通信接口進行了設計。
1 硬件系統設計
CAN(Controller Area Network)總線是一種串行通信總線,是國際上應用最廣泛的開放式現場總線之一。CAN最早被設計作為汽車環境中微控制器的通訊,但由于其靈活性好、可靠性高、功能完善,已經被廣泛應用到各個自動控制領域,CAN總線具有根據優先級的多主結構、可靠的錯誤檢測和處理機制、傳輸速率高(最高可達1 Mb/s)、傳輸距離遠(波特率低于5 kb/s時最遠可達10 km),克服了RS-485網絡的低總線利用率、單主從結構、無硬件錯誤檢測的不足。在飛行模擬器的設計過程中,主控機需要與多個模塊進行交互,選用CAN總線接口是非常適合的。
飛行模擬器通信接口的硬件設計,以CAN總線作為通信協議,選用ALTERA公司CYCLONE系列EP1C6Q240C8作為CAN節點的核心處理器,采用Philips公司的SJA1000T作為CAN總線控制器,在CAN總線控制器與CAN物理總線之間選用PCA82C250作為CAN收發器,為了增強抗干擾能力,
保護CAN總線控制器,在SJA1000T與PCA82C250之間使用6N137進行光電隔離,其速度為10 MHz。在Quartus II軟件中運用Verilog對FPGA編程,實現對SJA1000T的控制及CAN節點之間的通信功能。接口電路設計如圖1所示。


圖1 CAN接口配置電路圖

SJA1000芯片是一款獨立的CAN總線控制器,相對于它的前一款PCA82C200,SJA1000是在原有的BasicCAN模式的基礎上增加了PeliCAN模式,這種模式能夠支持CAN2.0B協議。為了提高SJA1000的總線驅動能力,在SJA1000與CAN總線之間加入了PCA82C250總線收發器,其主要功能是增大通信距離,提高系統的瞬間抗干擾能力,保護總線,降低射頻干擾,實現熱防護等。
系統設計中選用FPGA作為CAN總線節點的核心處理器,能夠在速度和體積上有更好的適應性,可以增強飛行模擬器通信接口設計的靈活性和可擴展性,因為在飛行模擬器設計中,有時還需要用到其他通信接口,比如括RS232和RS422。EP1C6Q240是ALTERA公司推出的一款高性價比的FPGA,工作電壓為3.3 V,內核電壓1.5 V,采用0.13μm工藝技術,其內部具有5 980個LEs,含有20個MK4 RAM塊(128×36 bits),總的RAM空間共計92 160比特,內嵌2個鎖相環電路,最大用戶I/O為185個,配置芯片選用EPCS1,對于FPGA的下載方式,通常可以采用JTAG方式和AS方式,不同下載方式,其硬件連接方式不用。JTAG方式,下載程序到FPGA芯片內RAM中,FPGA芯片內的程序掉電后無法保存,JTAG下載方式適合調試程序時使用,而AS方式則能將程序下載到配置芯片內,配置芯片內的程序掉電后也可以保存,再次上電后自動裝載到FPGA內并由FPGA開始運行。
在CAN總線接口硬件設計中,主要是CAN總線控制器與FPGA以及CAN總線控制器與CAN總線收發器之間的接口電路設計。在設計時,相比于采用單片機作為微處理器的設計,FPGA具有豐富的I/O端口,為了使FPGA的3.3V I/O接口電平與SJA1000的5 V TTL電平標準相匹配,在FPGA與SJA1000連接時需要使用74ALVC164245電平轉換器,這樣CAN總線控制器SJA1000的AD0~AD7、片選信號CS、RD、WR、ALE、INT、MODE分別經過電平轉換器再與FPGA的I/O相連。為了增強抗干擾能力,總線控制器SJA1000的發送輸出端TX0與接收輸入端RX0分別經集成光電耦合器6N137,與總線收發器PCA82C250的TXD和RXD相連,PCA82C250的CANH、CANL端口直接與CAN物理總線相連。PCA82C250是CAN總線控制器和物理總線之間的接口,具有可向總線差動發送數據和從CAN總線控制器差動接收數據的功能。另外,SJA1000的RX1引腳與PCA82C250的VREF引腳相連,使用輸入比較器旁路功能,可減少內部延時,增加正常通信的總線長度。




       

2 軟件系統設計
CAN總線節點的軟件的設計主要是對FPGA進行編程,一方面對飛行模擬器各類接口數據的采集和輸出,另一方面是對SJA1000的接口邏輯程序,來控制CAN總線的工作方式和工作狀態,進行數據的發送和接收。這里主要介紹FPGA對總線控制器的程序設計,主要包括對SJA1000的初始化邏輯、數據發送邏輯和數據接收邏輯。由于SJA1000地址總線與數據總線復用,這就需要FPGA不僅要產生SJA1000讀寫控制引腳的信號邏輯,還需要產生對SJA1000的尋址信號,實際上是一個向SJA1000寫地址的過程。因此設計的關鍵就是把SJA1000中的寄存器地址當成數據寫入到SJA1000中,同時配合地址鎖存信號ALE和寫允許信號WR完成對SJA1000特定寄存器的命令字寫入。
2.1 SJA1000初始化邏輯
初始化邏輯的主要功能是在系統上電或重啟后,對SJA1000進行初始化,以確定工作主頻、波特率、輸出特性等。SJA1000支持兩種模式,即BasicCAN模式和PeliCAN模式,BasicCAN模式是上電后默認的操作模式。SJA1000的初始化邏輯主要包括工作方式的設置、驗收濾波方式的設置、驗收屏蔽寄存器(AMR)和驗收代碼寄存器(ACH)的設置、中斷允許寄存器(IER)的設置、總線定時寄存器(BTR0、BTR1)、輸出控制寄存器(OCR)和時鐘分頻器(CDR)的設置等。在完成SJA1000的初始化設置以后,SJA1000就可以回到工作狀態,進行正常的通信任務。
2.2 數據發送邏輯
數據發送邏輯需要FPGA通過模擬總線的方法對SJA1000進行控制,SJA1000的發送緩沖區的寄存器共有11個字節,其中前3個字節分別是幀信息字節和兩個標識碼,后8個字節是數據。發送時,用戶需要將待發送的數據按特定的格式組合成一幀報文,送入SJA1000的發送緩沖區中,然后啟動SJA1000發送即可。需要注意的是,在向SJA1000發送緩存區送報文之前,必須先判斷發送緩沖區是否鎖定,如果鎖定則等待;判斷上次發送是否完成,如未完成則需等待發送完成。總線控制器寫周期的時序圖如圖2所示。


圖2 總線控制器寫周期的時序圖

2.3 數據接收邏輯
與數據發送邏輯類似,從接收緩沖區中讀取一條報文也需要連續讀取11個字節,數據接收邏輯除了正常的報文數據接收,還要實現其他情況的處理。對接收緩沖區的數據讀取完畢后要釋放CAN接收緩沖區。圖3所示為總線控制器讀周期的時序圖。


圖3 總線控制器讀周期的時序圖

在FPGA程序編寫時,采用狀態機完成邏輯的設計,分別包括初始化狀態、空閑狀態、查詢狀態、數據接收狀態、數據發送狀態。




       
3 結論
在系統設計過程中,采用ALTERA公司的EP1C6型FPGA進行設計,在Quartus II環境中利用Verilog HDL編程產生SJA1000的片選信號、地址鎖存信號以及讀寫信號等,這些信號共同驅動SJA1000完成數據的發送和接收。在采用FPGA實現對SJA1000的邏輯控制過程中,采用Quartus II中的SignalTap II Logic Analyzer工具對FPGA各接口信號進行了測量,經檢查各種邏輯均符合SJA1000的接口時序要求。
基于FPGA的飛行模擬器通信接口設計主要由Verilog語言進行描述,易于修改和移植,同時由于FPGA的I/O豐富,還可以將模擬器中一些常用的開關量連接到FPGA上,這樣就可以將多種功能集成在一個FPGA上,相較于采用單片機控制SJA1000實現CAN總線通信,本設計方案可擴展性好,穩定性高,能降低成本、系統體積及功耗,在飛行模擬器領域中具有廣泛的應用前景。



本文地址:http://m.qingdxww.cn/thread-135916-1-1.html     【打印本頁】

本站部分文章為轉載或網友發布,目的在于傳遞和分享信息,并不代表本網贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據著作權人的要求,第一時間更正或刪除。
您需要登錄后才可以發表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區
  • 使用SAM-IoT Wx v2開發板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯系我們
電子工程網 © 版權所有   京ICP備16069177號 | 京公網安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 色综合久久久久久久久五月性色| 亚洲AV久久无码高潮喷水| 国产精品人妻在线观看| 噜噜噜狠狠夜夜躁精品| 视频一区视频二区ae86| 一本久久精品一区二区| 日韩成人高清| 亚州色片| 三级三级三三级a级全黄| 日本一区不卡在线观看| 无码中文资源在线播放| 天天综合天天综合色在线| 尤物视频最新网址| 国产精品97久久AV色婷婷综合| 欧美精品色婷婷五月综合| 在线观看免费av网| 亚洲精品自拍视频| 日韩avwww| 伊人久久中文| 亚洲最大4438x| 国产高清美女一级毛片久久 | 五月婷婷爱| 亚洲第一区在线| 成人公开免费视频| 男同志china免费视频| 三区在线视频| 亚洲一区二区视频| 同房视频在线观看| 一个看片免费视频www| 国产精品内射久久久久欢欢| 亚洲日韩欧美国产中文在线| 日本一本草久p| 亚欧成人乱码一区二区| 亚洲高清中文字幕精品不卡| 国产精品亚欧美一区二区三区| 甜宠溺H宝贝嗯撞PLAY啊| 视频精品一区| 日韩 欧美 亚洲 中文字幕| 午夜亚洲国产| YELLOW免费观看2019| 漂亮的保姆3集电影免费观看中文|