日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當前位置:首頁 > 嵌入式 > 嵌入式硬件
[導讀]引言MIL-STD-1553B軍用總線標準,在軍事裝備,特別是飛機系統(tǒng)中得到了廣泛的應用,艦載系統(tǒng)中也正在逐步推廣。對于1553B總線傳輸信息的飛機系統(tǒng),特別是由該總線網絡構成的

引言

MIL-STD-1553B軍用總線標準,在軍事裝備,特別是飛機系統(tǒng)中得到了廣泛的應用,艦載系統(tǒng)中也正在逐步推廣。對于1553B總線傳輸信息的飛機系統(tǒng),特別是由該總線網絡構成的綜合航火控系統(tǒng)、通信系統(tǒng)而言,系統(tǒng)時實監(jiān)測與在線故障診斷均建立在信息錄取的前提下。為了方便錄取1553B總線上傳輸的信息就需要應用1553B總線到計算機標準接口轉換器,目前常用轉換器有1553B-PCI、1553B-VXI等,但在工程實踐過程中,它們存在體積大、價格高、使用不方便等缺陷。相比而言,USB接口具有體積小、攜帶方便、熱插拔等特征,具有不可替代的優(yōu)勢。

本文介紹的1553B設備檢測系統(tǒng)就是基于USB接口的。設計包含兩大部分:硬件設計和軟件設計。硬件設計主要實現1553B接口到USB接口的轉換;軟件設計主要是USB芯片固件開發(fā)、USB接口驅動、開發(fā)計算機測試1553B設備軟件。

2 硬件系統(tǒng)設計

本系統(tǒng)的硬件設計工作主要集中在1553B與USB總線接口的轉換設計。硬件系統(tǒng)分成三部分:1553B接口轉換電路、FPGA譯碼電路和USB接口電路。

2.1 1553B接口轉換電路

目前,1553B接口芯片種類繁多,根據工程應用場合和實際需要,我們選用DDC公司BU-61580芯片。BU-61580芯片除了具有遠程終端(RT)功能外,還可以用作總線控制器(BC)、總線監(jiān)控器(MT)。其內部功能極強,接口靈活、便于控制,有各種封裝形式和供電電壓供用戶選擇。

2.2 FPGA譯碼電路

FPGA作為現場可編程器件越來越廣泛地應用到工程設計中。利用FPGA對系統(tǒng)中信號進行譯碼可避免由于開始硬件電路設計考慮不周造成的硬件設計錯誤,而且方便系統(tǒng)的以后的升級。本系統(tǒng)中,FPGA通過1553B接口芯片讀取1553B總線上的數據并暫存在FPGA內部RAM中,然后通知USB接口芯片把數據讀出;同時,還要通過USB接口接收從PC下發(fā)的數據,重新打包,發(fā)送到1553B設備。

2.3 USB接口電路

USB接口控制芯片包含兩大類:一類是需要外置控制器的芯片,還有一類為內置控制器,如Cypress公司的CY7C64613芯片。本系統(tǒng)選用PHILIP公司的PDIUSBD12芯片,需外置控制器的芯片。

PDIUSBD12芯片是帶有并行總線和局部DMA傳輸能力的全速USB接口器件。片內集成了高性能USB接口器件、SIE、FIFO存儲器、收發(fā)器以及電壓調整器等,可與任何外部微控制器/微處理器實現高速并行接口(2MB/s),完全能匹配1553B總線最高傳輸速率(1MB/s)[1]。USB 實現模塊的核心是PIDUSB12。外置控制器AT89C52的P0口接PIDUSBD12的DATA0~DATA7,用來傳輸要交換的數據。P0 口所有引腳都要外接上拉電阻。PIDUSBD12的片選信號和復位信號由AT89C52的P1.6與P1.7提供。AT89C52 的P3.6與P3.7作為PIDUSBD12的寫讀控制端,AT89C52和PIDUSBD12的ALE相連,PIDUSBD12的掛起狀態(tài)和中斷控制都接高電平。 PIDUSB12的D+和D-加上+5V電源和地就構成了USB接口,從而能與計算機相連。

PDIUSBD12與USB的連接通過1.5K上拉電阻將D+置為高實現,默認狀態(tài)不與Vcc相連,可用SoftConnect技術通過AT89C52發(fā)送專門的命令來實現該連接,允許AT89C52在決定與USB建立連接之前完成初始化時序,USB總線連接可以重新初始化而不需要撥出電纜[2]。隨后USB設備識別和通信就要依靠固件程序和驅動程序了。

3 軟件設計

1553B設備測試軟件首先要實現USB接口與PC之間的通信,然后,再對設備進行性能檢測。因此,需要對USB芯片進行固件、PC驅動程序和測試程序設計。

3.1 USB固件設計

AT89C52中的固化程序可采用C51 設計,主要功能是:控制PDIUSBDl2接受USB驅動程序的請求;控制PDIUSBDl2接受應用程序的控制指令;通過PDIUSBDl2存儲數據并實時上傳PC機。PDIUSBDl2的固件設計成完全的中斷驅動,當CPU處理前臺任務時USB的傳輸可在后臺進行,確保了最佳的傳輸速率和更好的軟件結構,簡化了編程和調試。單片機通過PDIUSBDl2與主機通信的過程簡述如下::當PDIUSBDl2接收到主機發(fā)來的令牌包后就給單片機發(fā)中斷,單片機進入中斷服務程序。它將數據從PDIUSBD12的內部FIFO取回到CPU存儲器并根據中斷寄存器判斷USB令牌包的類型從而建立正確的事件標志以通知主循環(huán)程序進行處理,主循環(huán)檢查事件標志并進入對應的子程序進行進一步的處理,固件程序流程如圖2所示。系統(tǒng)上電后,先檢測PDIUSBD12,如檢測不成功則報錯,要使用者重插USB接口,再次檢測。檢測成功則根據PDIUSBD12的中斷類型設定中斷標志位的值,再根據中斷位的值調用相應的功能子程序[3]。

在本設計中,功能子程序主要包括兩部分:

1)通過AT89C52的P0端口從FPGA接收1553B設備數據,重新打包,再經過P0端口寫入PC機;

2) 通過P0端口接收PC數據,重新打包,通過AT89C52的P0端口從FPGA寫入1553B設備。

3.2 驅動程序

完成驅動程序設計的方法一般有三種:基于DDK開發(fā)、基于Windrive開發(fā)和基于DriveStudio開發(fā)。由于Windrive和DriveStudio開發(fā)對DDK中的函數進行了一定程度的封裝,它們開發(fā)的難度比直接用DDK開發(fā)要小,但開發(fā)的靈活性不如DDK。本設計使用的驅動是DriveStudio與DDK配合進行開發(fā),開發(fā)驅動程序的效率較高。

在驅動程序開發(fā)平臺搭建成功后,我們利用驅動程序生成向導Driver Wizard,根據硬件設置生成USB設備驅動程序的大體框架。設置如下:①選擇 WDM的驅動程序類型和Windows 2000運行平臺。②選擇 USB總線類型,填寫它的VID(供應商ID)和PID(設備ID),這些信息由芯片的供應商提供。③增加端點 1和端點2,它們分別具有IN 和OUT屬性。④根據需要選擇對設備的操作有:Read、Write、Device Control和CleanUp。⑤選擇給端點2產生 BULK Read和Write的代碼, 向導會自動產生一套對端點2進行讀、寫的代碼。⑥設置驅動程序的屬性,采用WDM接口;在選取讀寫方式時應遵循一條原則:需要快速傳送大量數據時,用 Direct I/O,反之用 Buffer I/O,本設計數據量不大,故選用Buffer I/O;由于無特殊的電源需求,故選用系統(tǒng)默認的Manage Power For This Device。⑦增加IOCTL接口,在其生成的代碼框架中加入自己的操作,以實現一個完整的USB 設備驅動程序。最后就生成了一個 WDM 型的 USB 設備驅動程序框架和一個測試該驅動程序的測試程序大體框架。然后在其中添加需要的功能代碼。[!--empirenews.page--]

通過DriveStudio初步建立一個驅動程序框架后,我們只要修改TESTFIRMDevice.h和TESTFIRMDevice.cpp就可以了,修改完畢后,可以發(fā)現使用DriveStudio向導生成的USB設備驅動程序,不僅不需要對底層的硬件進行編程,甚至可以忽略與硬件控制緊密相關的復雜的Windows數據結構(如,URB、IPR)、API函數(DriveEntry()、IoCreateDevice()、AddDevice())的使用。

用DriveWizard創(chuàng)建USB框架程序自動生成的兩個工程(Project)文件:TESTFIRM驅動程序工程和Test_TESTFIRM應用程序工程,將光標定位在其中一個工程上之后,單擊右鍵,選擇“set as Acnve Pmiect”即可設置該工程為當前活動工程。對于驅動程序編譯,不用進行任何設置,單擊Build圖標即可生成USB驅動程序TESTFIRM.sys文件。

3.3 通信程序

因為DriveStudio已經替我們把核心驅動程序基本開發(fā)完了,在本設計中,只要掌握WriteFile和ReadFile兩個函數的使用就可以進行簡單的USB通信了。由于DriveStudio所用的類庫是對DDK函數一定程度的封裝,必須在 VB、VC++等軟件開發(fā)環(huán)境中編譯,創(chuàng)建自己的庫文件,所以很容易為程序增加了圖形界面,使用戶操作更加方便。

當USB設備與PC通信時,USB設備是從設備,PC是主設備。PC機通過檢測USB總線數據端電平判斷是否接入或拔出USB設備。PC檢測到USB設備后,調用USB設備函數。如果設備被正確打開,軟件開啟監(jiān)聽USB設備線程,以20ms周期輪詢USB接收數據接口。一旦接收到數據,數據就被分析并且回顯到界面上,直到線程被中斷。

4 結論

1553B總線是當前飛機系統(tǒng)中廣泛應用的總線類型,將它與USB總線融合起來具十分重要的實際意義。在開發(fā)過程中,利用DriveStudio與DDK配合進行開發(fā)USB驅動程序,大大提高了開發(fā)的效率。本設計在實際設備測試中,板卡可以穩(wěn)定工作,測試軟件工作正常,滿足項目設計要求。

本文作者創(chuàng)新點:利用PDIUSBDl2外置CPU控制數據的讀入和寫出,開發(fā)USB驅動程序,結合FPGA完成系統(tǒng)時序控制,是對1553B-USB轉換器設計一種有益的探索。

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

LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: 驅動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設備,其驅動電源的性能直接關系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅動電源設計中至關重要的兩個環(huán)節(jié),集成化方案的設計成為提升電機驅動性能的關鍵。

關鍵字: 工業(yè)電機 驅動電源

LED 驅動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設備的使用壽命。然而,在實際應用中,LED 驅動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設計、生...

關鍵字: 驅動電源 照明系統(tǒng) 散熱

根據LED驅動電源的公式,電感內電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關鍵字: LED 設計 驅動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產業(yè)的重要發(fā)展方向。電動汽車的核心技術之一是電機驅動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅動系統(tǒng)中的關鍵元件,其性能直接影響到電動汽車的動力性能和...

關鍵字: 電動汽車 新能源 驅動電源

在現代城市建設中,街道及停車場照明作為基礎設施的重要組成部分,其質量和效率直接關系到城市的公共安全、居民生活質量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關鍵字: 發(fā)光二極管 驅動電源 LED

LED通用照明設計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數校正(PFC)、空間受限和可靠性等。

關鍵字: LED 驅動電源 功率因數校正

在LED照明技術日益普及的今天,LED驅動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關鍵字: LED照明技術 電磁干擾 驅動電源

開關電源具有效率高的特性,而且開關電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現在的LED驅動電源

關鍵字: LED 驅動電源 開關電源

LED驅動電源是把電源供應轉換為特定的電壓電流以驅動LED發(fā)光的電壓轉換器,通常情況下:LED驅動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關鍵字: LED 隧道燈 驅動電源
關閉