關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于RTX的舵機控制系統(tǒng)研制

        基于RTX的舵機控制系統(tǒng)研制

        作者: 時間:2012-02-17 來源:網絡 收藏

        環(huán)境下,PXI設備驅動程序的基本結構如圖4所示。其中,PXI設備和位于結構底層,PXI設備與內核通過中斷和I/O端口來進行數(shù)據(jù)交互,RTX內核通過庫函數(shù)和設備驅動程序來提供所需服務。上層應用程序與底層驅動程序通過建立共享內存來進行通信。

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

        f.jpg


        在RTX環(huán)境下進行PXI設備驅動開發(fā),首先需要將Windows下的設備轉換為RTX下的設備。RTX提供實現(xiàn)該功能的屬性窗,如圖5所示。利用RTX屬性窗進行轉換分主要分為兩個步驟:
        (1)添加RTX的INF支持;
        (2)在設備管理器中更新設備驅動,將PXI設備從Windows支持轉換為RTX支持。
        RTX環(huán)境下一個完整的PXI驅動程序至少由以下幾方面組成:
        (1)設備初始化和釋放。查找PCI設備傳送設備號和廠家號兩個主要參數(shù),并遍歷所有的PCI插槽直到匹配為止。找到設備后,讀出中斷號、基地址等,為以后的工作做準備。
        (2)地址到虛擬地址的映射,使系統(tǒng)能夠識別硬件。由于對硬件的讀寫操作是物理地址,而應用程序實現(xiàn)讀寫操作使用的是虛擬地址,所以驅動程序必須要完成地址映射。
        設計的PXI板卡驅動程序首先用接口函數(shù)DeviceSearch()在總線上輪詢,并查找到設備。然后通過DeviceInit()函數(shù)獲得設備的硬件資源,如中斷號、內存、輸入輸出I/O和DMA等。通過RtGetBusDataByOffset()函數(shù)訪問設備的整個PCI配置空間,得到本地配置寄存器和存儲空間內存的基地址和中斷號等信息,然后根據(jù)獲得的基地址利用RtTranslateBusAddress()和RtMapMem ory()函數(shù)將讀取出來的基地址轉換為系統(tǒng)能夠訪問的虛擬地址。需要指出的是,板卡的本地寄存器和存儲空間可以通過Memory映像和I/O直接訪問,文中設計的驅動程序的運用的是Memory映像。如選用I/O直接訪問,可以通過調用RtEnablePortIo()和RtReadPortUchar()等函數(shù)即實現(xiàn)對端口的直接讀寫。當找到并打開板卡后就可以自定義讀寫函數(shù)對板卡進行讀寫操作,從而達到控制板卡的目的,具體開發(fā)流程如圖6所示。

        e.jpg



        4 結束語
        RTX環(huán)境下的驅動程序可以通過RTX函數(shù)進行直接訪問的,能夠隨時停止隨時配置。文中RTX,在Windows平臺實現(xiàn)了風洞虛擬飛行試驗舵控仿真系統(tǒng)。與直接Windows平臺設計的系統(tǒng)相比,系統(tǒng)的響應時間提高到ms級,滿足了實時性要求。由于測試軟件是基于VC++環(huán)境開發(fā)的可視化軟件,系統(tǒng)具有良好的可擴展性,通用性較強。通過聯(lián)調,驗證了仿真系統(tǒng)的可靠性和實時性。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 武穴市| 海城市| 静海县| 汕头市| 许昌县| 抚顺县| 高唐县| 红河县| 南皮县| 广德县| 巨野县| 墨脱县| 昌黎县| 佳木斯市| 前郭尔| 梅河口市| 岱山县| 济宁市| 新建县| 涿州市| 万山特区| 昌平区| 青神县| 宜丰县| 呼伦贝尔市| 定州市| 花垣县| 临海市| 盐亭县| 临漳县| 许昌市| 囊谦县| 吉安市| 扶风县| 白山市| 奉新县| 四川省| 泽普县| 广灵县| 出国| 历史|