<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于FPGA的飛行模擬器通信接口設(shè)計是什么樣的?

          基于FPGA的飛行模擬器通信接口設(shè)計是什么樣的?

          作者: 時間:2018-08-08 來源:網(wǎng)絡(luò) 收藏

          摘要:在的設(shè)計中,為了使數(shù)據(jù)能夠快速有效地在的各個模塊之間進(jìn)行高速傳遞,提出了一種使用FPGA作為節(jié)點結(jié)構(gòu)中的核心處理器的設(shè)計方法,并完成了通信接口的軟硬件設(shè)計。采用Verilog HDL進(jìn)行編程,能夠完成對SJA1000總線控制器的有效讀寫。實際測試表明,相較于單片機作為處理器,本設(shè)計可擴展性好,易于修改和移植,能降低模擬器成本。

          本文引用地址:http://www.ex-cimer.com/article/201808/385785.htm

          飛行模擬器是現(xiàn)代飛行員訓(xùn)練的必需設(shè)備,它是一種由計算機實時控制、多系統(tǒng)協(xié)調(diào)工作、能模擬真實飛行環(huán)境的模擬設(shè)備。相較于利用飛機的飛行訓(xùn)練而言,利用飛行模擬器的模擬飛行訓(xùn)練不僅不受天氣等自然條件的制約,而且沒有后勤、機務(wù)保障以及飛行安全等因素的限制。國內(nèi)外許多單位均研制了各種不同種類和規(guī)模的訓(xùn)練模擬器,并取得良好的訓(xùn)練效果,保證了飛行任務(wù)的圓滿完成。

          在飛行模擬器的設(shè)計中,要求大量的信息能夠快速有效地在飛行模擬器的各個模塊之間進(jìn)行高速傳遞,這就需要一定的通信接口協(xié)議來實現(xiàn)數(shù)據(jù)的交互。目前,飛行模擬器通常采用作為通信協(xié)議,并采用單片機作為微處理器,可擴展性差。文章根據(jù)飛行模擬器的結(jié)構(gòu)特點,分析了現(xiàn)場總線技術(shù)和FPGA技術(shù)的發(fā)展,根據(jù)飛行模擬器的實際需要和總線自身特點,選用了來作為主機和現(xiàn)場設(shè)備的通信方式,并使用FPGA作為CAN總線節(jié)點結(jié)構(gòu)中的核心處理器,對飛行模擬器通信接口進(jìn)行了設(shè)計。

          1 硬件系統(tǒng)設(shè)計

          CAN(Controller Area Network)總線是一種串行通信總線,是國際上應(yīng)用最廣泛的開放式現(xiàn)場總線之一。CAN最早被設(shè)計作為汽車環(huán)境中微控制器的通訊,但由于其靈活性好、可靠性高、功能完善,已經(jīng)被廣泛應(yīng)用到各個自動控制領(lǐng)域,CAN總線具有根據(jù)優(yōu)先級的多主結(jié)構(gòu)、可靠的錯誤檢測和處理機制、傳輸速率高(最高可達(dá)1 Mb/s)、傳輸距離遠(yuǎn)(波特率低于5 kb/s時最遠(yuǎn)可達(dá)10 km),克服了RS-485網(wǎng)絡(luò)的低總線利用率、單主從結(jié)構(gòu)、無硬件錯誤檢測的不足。在飛行模擬器的設(shè)計過程中,主控機需要與多個模塊進(jìn)行交互,選用 CAN總線接口是非常適合的。

          飛行模擬器通信接口的硬件設(shè)計,以CAN總線作為通信協(xié)議,選用ALTERA公司CYCLONE系列Q240C8作為CAN節(jié)點的核心處理器,采用Philips公司的SJA1000T作為CAN總線控制器,在CAN總線控制器與CAN物理總線之間選用PCA82C250作為CAN收發(fā)器,為了增強抗干擾能力,

          保護CAN總線控制器,在SJA1000T與PCA82C250之間使用6N137進(jìn)行光電隔離,其速度為10 MHz。在Quartus II軟件中運用Verilog對FPGA編程,實現(xiàn)對SJA1000T的控制及CAN節(jié)點之間的通信功能。接口電路設(shè)計如圖1所示。


          SJA1000芯片是一款獨立的CAN總線控制器,相對于它的前一款PCA82C200,SJA1000是在原有的BasicCAN模式的基礎(chǔ)上增加了PeliCAN模式,這種模式能夠支持CAN2.0B協(xié)議。為了提高SJA1000的總線驅(qū)動能力,在SJA1000與CAN總線之間加入了 PCA82C250總線收發(fā)器,其主要功能是增大通信距離,提高系統(tǒng)的瞬間抗干擾能力,保護總線,降低射頻干擾,實現(xiàn)熱防護等。

          系統(tǒng)設(shè)計中選用FPGA作為CAN總線節(jié)點的核心處理器,能夠在速度和體積上有更好的適應(yīng)性,可以增強飛行模擬器通信接口設(shè)計的靈活性和可擴展性,因為在飛行模擬器設(shè)計中,有時還需要用到其他通信接口,比如括RS232和RS422。Q240是ALTERA公司推出的一款高性價比的 FPGA,工作電壓為3.3 V,內(nèi)核電壓1.5 V,采用0.13μm工藝技術(shù),其內(nèi)部具有5 980個LEs,含有20個MK4 RAM塊(128×36 bits),總的RAM空間共計92 160比特,內(nèi)嵌2個鎖相環(huán)電路,最大用戶I/O為185個,配置芯片選用EPCS1,對于FPGA的下載方式,通??梢圆捎肑TAG方式和AS方式,不同下載方式,其硬件連接方式不用。JTAG方式,下載程序到FPGA芯片內(nèi)RAM中,F(xiàn)PGA芯片內(nèi)的程序掉電后無法保存,JTAG下載方式適合調(diào)試程序時使用,而AS方式則能將程序下載到配置芯片內(nèi),配置芯片內(nèi)的程序掉電后也可以保存,再次上電后自動裝載到FPGA內(nèi)并由FPGA開始運行。

          在CAN總線接口硬件設(shè)計中,主要是CAN總線控制器與FPGA以及CAN總線控制器與CAN總線收發(fā)器之間的接口電路設(shè)計。在設(shè)計時,相比于采用單片機作為微處理器的設(shè)計,F(xiàn)PGA具有豐富的I/O端口,為了使FPGA的3.3V I/O接口電平與SJA1000的5 V TTL電平標(biāo)準(zhǔn)相匹配,在FPGA與SJA1000連接時需要使用74ALVC164245電平轉(zhuǎn)換器,這樣CAN總線控制器SJA1000的 AD0~AD7、片選信號CS、RD、WR、ALE、INT、MODE分別經(jīng)過電平轉(zhuǎn)換器再與FPGA的I/O相連。為了增強抗干擾能力,總線控制器 SJA1000的發(fā)送輸出端TX0與接收輸入端RX0分別經(jīng)集成光電耦合器6N137,與總線收發(fā)器PCA82C250的TXD和RXD相連,PCA82C250的CANH、CANL端口直接與CAN物理總線相連。PCA82C250是 CAN總線控制器和物理總線之間的接口,具有可向總線差動發(fā)送數(shù)據(jù)和從CAN總線控制器差動接收數(shù)據(jù)的功能。另外,SJA1000的RX1引腳與 PCA82C250的VREF引腳相連,使用輸入比較器旁路功能,可減少內(nèi)部延時,增加正常通信的總線長度。

          2 軟件系統(tǒng)設(shè)計

          CAN總線節(jié)點的軟件的設(shè)計主要是對FPGA進(jìn)行編程,一方面對飛行模擬器各類接口數(shù)據(jù)的采集和輸出,另一方面是對SJA1000的接口邏輯程序,來控制CAN總線的工作方式和工作狀態(tài),進(jìn)行數(shù)據(jù)的發(fā)送和接收。這里主要介紹FPGA對總線控制器的程序設(shè)計,主要包括對SJA1000的初始化邏輯、數(shù)據(jù)發(fā)送邏輯和數(shù)據(jù)接收邏輯。由于SJA1000地址總線與數(shù)據(jù)總線復(fù)用,這就需要FPGA不僅要產(chǎn)生SJA1000讀寫控制引腳的信號邏輯,還需要產(chǎn)生對 SJA1000的尋址信號,實際上是一個向SJA1000寫地址的過程。因此設(shè)計的關(guān)鍵就是把SJA1000中的寄存器地址當(dāng)成數(shù)據(jù)寫入到SJA1000 中,同時配合地址鎖存信號ALE和寫允許信號WR完成對SJA1000特定寄存器的命令字寫入。

          2.1 SJA1000初始化邏輯

          初始化邏輯的主要功能是在系統(tǒng)上電或重啟后,對SJA1000進(jìn)行初始化,以確定工作主頻、波特率、輸出特性等。SJA1000支持兩種模式,即 BasicCAN模式和PeliCAN模式,BasicCAN模式是上電后默認(rèn)的操作模式。SJA1000的初始化邏輯主要包括工作方式的設(shè)置、驗收濾波方式的設(shè)置、驗收屏蔽寄存器(AMR)和驗收代碼寄存器(ACH)的設(shè)置、中斷允許寄存器(IER)的設(shè)置、總線定時寄存器(BTR0、BTR1)、輸出控制寄存器(OCR)和時鐘分頻器(CDR)的設(shè)置等。在完成SJA1000的初始化設(shè)置以后,SJA1000就可以回到工作狀態(tài),進(jìn)行正常的通信任務(wù)。


          上一頁 1 2 下一頁

          關(guān)鍵詞: EP1C6 飛行模擬器 CAN總線

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();