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

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于PCI總線的1553B總線接口卡設(shè)計(jì)

          基于PCI總線的1553B總線接口卡設(shè)計(jì)

          作者: 時(shí)間:2014-01-11 來源:網(wǎng)絡(luò) 收藏

            在進(jìn)行驅(qū)動(dòng)編寫前,需要根據(jù)功能需求對(duì)9052芯片進(jìn)行相應(yīng)的配置操作。9052芯片有2類寄存器:配置寄存器和配置寄存器。PCI配置寄存器的內(nèi)容反映配置空間的情況,它的配置空間的內(nèi)容包括PCI設(shè)備號(hào)DID,制造商號(hào)VID、中斷號(hào)、設(shè)備類型號(hào)、局部空問基地址、局部空間描述符、片選響應(yīng)以及局部響應(yīng)控制CNTRL等信號(hào),這些配置信息在芯片復(fù)位時(shí)通過串行E2PROM加載。PCI9052會(huì)自動(dòng)根據(jù)該E2PROM的狀態(tài)決定其內(nèi)部寄存器值。E2PROM中的配置信息的正確與否關(guān)系著整個(gè)板卡是否能夠正常工作。當(dāng)系統(tǒng)配置成功后,接口卡可被PC機(jī)識(shí)別,即可進(jìn)行驅(qū)動(dòng)程序的開發(fā)。

            2.2 系統(tǒng)軟件設(shè)計(jì)

            2.2.1 驅(qū)動(dòng)程序設(shè)計(jì)

            設(shè)備驅(qū)動(dòng)程序提供連接到計(jì)算機(jī)的硬件的軟件接口,所要完成的任務(wù)是鏈接應(yīng)用層和硬件層,使操作系統(tǒng)識(shí)別具體硬件,并使用硬件資源。微軟公司提供了專門的驅(qū)動(dòng)程序開發(fā)工具包Windows XP DDK,但是DDK開發(fā)難度較大,周期長,不容易掌握,Numga公司的開發(fā)工具Driv er Studio可以大大簡化驅(qū)動(dòng)程序的開發(fā)過程,它制作的類庫封裝了DDK的函數(shù),完全兼容所有的DDK函數(shù),它封裝了比較底層的繁復(fù)操作,減少了對(duì)簡單接口的復(fù)雜操作,專門提供了的開發(fā)向?qū)izard與微軟的Visual C++緊密地集成,驅(qū)動(dòng)程序代碼框架只需要在DrivetWorks工具向?qū)С绦虻闹敢?,根?jù)硬件的具體參數(shù)填寫必要步驟即可完成。另外,Driver Wizard還能生成專為特殊設(shè)備定制的代碼,比如PCI設(shè)備,ISA設(shè)備等。

            驅(qū)動(dòng)程序的基本功能是完成設(shè)備的初始化、對(duì)端口的讀寫操作、中斷的設(shè)備和響應(yīng)及中斷的調(diào)用,以及對(duì)寄存器和內(nèi)存的直接讀寫。在Driver Studio生成的程序框架上,根據(jù)具體的要求添加新的類對(duì)象和代碼,結(jié)合接口卡的特點(diǎn),編寫一些特殊的驅(qū)動(dòng),在VC下編譯后即可得到所需的驅(qū)動(dòng)程序。

            2.2.2 應(yīng)用程序設(shè)計(jì)

            Windows系統(tǒng)為用戶提供了一些API函數(shù),用于向WDM結(jié)構(gòu)的驅(qū)動(dòng)程序發(fā)命令以及進(jìn)行數(shù)據(jù)交換,在內(nèi)核區(qū)存在各種與之相對(duì)應(yīng)的處理例程,見表1。

            b.JPG

            CreateFile用于獲得驅(qū)動(dòng)程序句柄,CloseHandle關(guān)閉驅(qū)動(dòng)程序,而其余函數(shù)用于應(yīng)用程序控制驅(qū)動(dòng)程序或者與驅(qū)動(dòng)程序交換數(shù)據(jù),其中Device Control函數(shù)完成讀取PCI配置空間內(nèi)容的功能。在WDM中實(shí)現(xiàn)輸入輸出處理可以通過KIoRange類實(shí)現(xiàn)。應(yīng)用層通過DeviceloControl函數(shù)向設(shè)備句柄調(diào)用KIoRange類的成員函數(shù),實(shí)現(xiàn)應(yīng)用層對(duì)I/O空間的處理。

            應(yīng)用程序的流程如圖2所示。

            c.JPG

            3 結(jié)語

            1553B作為一種高可靠性和穩(wěn)定性的數(shù)據(jù)總線已在軍事和工業(yè)領(lǐng)域得到越來越廣泛的應(yīng)用。本文設(shè)計(jì)了一種基于PCI總線的,分別使用PCI9052和BU-61580作為PCI總線和1553B總線的協(xié)議芯片,使用FPGA進(jìn)行總線邏輯控制,提高了系統(tǒng)的集成度,驅(qū)動(dòng)程序方面,利用Driver Studio向?qū)沈?qū)動(dòng)程序的框架,極大簡化了驅(qū)動(dòng)程序的編制。實(shí)驗(yàn)證明,本文設(shè)計(jì)的接口卡可以為電子設(shè)備提供符合1553B標(biāo)準(zhǔn)的接口,完成可靠的數(shù)據(jù)交換,工作穩(wěn)定,功能完善,多個(gè)板卡可組成一個(gè)1553B總線仿真測(cè)試系統(tǒng),通過仿真設(shè)備可用于模擬航電設(shè)備進(jìn)行仿真測(cè)試,對(duì)開發(fā)1553B總線通信系統(tǒng)具有重要的現(xiàn)實(shí)意義和應(yīng)用前景。


          上一頁 1 2 下一頁

          評(píng)論


          相關(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); })();