色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DSP的內(nèi)嵌PCI總線的衛(wèi)星信號仿真器設(shè)計方案

          基于DSP的內(nèi)嵌PCI總線的衛(wèi)星信號仿真器設(shè)計方案

          作者: 時間:2012-04-20 來源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://cafeforensic.com/article/257561.htm

          3.3 應(yīng)用程序框圖及相應(yīng)PCI驅(qū)動的關(guān)鍵代碼分析

          根據(jù)的總體設(shè)計,需要在PC機上實現(xiàn)二個功能模塊;

          數(shù)字信號處理模塊該模塊是的核心模塊,實時仿真導(dǎo)航電文,計算衛(wèi)星偽距、各通道的頻率字和碼控制字等。

          通信模塊 該模塊主要是將PC機計算得到的相關(guān)信息通過PCI傳遞給。

          考慮到整個仿真器數(shù)據(jù)要求的實時性,通過中斷函數(shù)實現(xiàn)PC機中的程序傳輸數(shù)據(jù),當(dāng)需要數(shù)據(jù)時,通過RSTSRC寄存器INTREQ位寫1產(chǎn)生一個中斷信號發(fā)送給PC機,但要使該中斷有效,必須要求主機狀態(tài)寄存器(HSR)中的INTAM位為0。因此在上位機程序中,初始化階段必須把該中斷使能位打開。應(yīng)用程序的結(jié)構(gòu)如圖7所示。

          中斷處理步驟如下:

          (1)應(yīng)用程序打開中斷使能,系統(tǒng)等待中斷;

          (2)如果中斷到來,則清除中斷標志,取消中斷源;

          (3)在中斷函數(shù)中執(zhí)行數(shù)據(jù)傳輸;

          (4)數(shù)據(jù)傳輸完后給發(fā)中斷,實現(xiàn)與DSP的握手;

          (5)重新開啟中斷源。

          第(2)步和第(5)步在中斷使能函數(shù)中實現(xiàn)。

          中斷響應(yīng)函數(shù)的關(guān)鍵代碼如下:

          PCI主機給DSP發(fā)中斷是通過將HDCR寄存器的DSPINT位置1實現(xiàn)的,要注意產(chǎn)生該中斷的有效前提條件是PCI的中斷使能寄存器(PCIIEN)HOSTSW位被使能,即HOSTSW=1。

          為了便于使用PCI的驅(qū)動函數(shù)和以后驅(qū)動程序發(fā)布的需要,將驅(qū)動函數(shù)封裝在動態(tài)鏈接庫DLL中,它們中主要函數(shù)的關(guān)鍵代碼如下:

          為了使PC機能夠正確地捕獲到由DSP傳來的中斷,在動態(tài)鏈接的DSP6416_IntEnable()函數(shù)中,必須設(shè)置內(nèi)核模式下的中斷傳輸命令,因為它的優(yōu)先級比用戶模式下的中斷響應(yīng)函數(shù)高,因而一旦DSP產(chǎn)生中斷,首先執(zhí)行的是內(nèi)核模式下的中斷傳輸命令。由于DSP6416內(nèi)嵌PCI產(chǎn)生的中斷屬于電平敏感中斷,如果不清除中斷它將一直有效,這將會導(dǎo)致中斷響應(yīng)函數(shù)不斷執(zhí)行而死機。因此,必須在中斷使能函數(shù)設(shè)置中斷傳輸命令。在該例中,先從HSR中讀取一個DWORD,然后在中斷傳輸命令中設(shè)置CMD_MASK位。如果前面從HSR中讀出的值為0x04,則屏蔽DSP所產(chǎn)生的中斷,否則不執(zhí)行屏蔽命令,然后在中斷傳輸命令中向DSP的RSTSRC寫入0x10清除中斷。圖6中用到的關(guān)閉中斷使能和關(guān)閉設(shè)備2個函數(shù)可分別通過調(diào)用WinDriver中 WDC_IntDisable(),WDC_PciDe_viceClose(),WDC_DriverClose()的函數(shù)等實現(xiàn)。此外,調(diào)用這些函數(shù)之前要判斷中斷是否存在,設(shè)備是否打開,否則會出現(xiàn)嚴重錯誤。

          3.4 仿真器實驗驗證

          設(shè)置仿真器場景:用戶位置為北緯60°0000,東經(jīng)100°0000,高程300 m,靜止狀態(tài)。GG24接收機的解算結(jié)果如圖8所示。

          GG24接收機解算結(jié)果是北緯59°5959.867 52,東經(jīng)99°5957.636 24,高程為308.02 m,與設(shè)置的場景,即北緯60°0000,東經(jīng)100°0000,高程300 m相當(dāng)吻合。因此,這說明了仿真器的正確性和有效性。

          4 結(jié) 語

          在此設(shè)計的基于DSP6416內(nèi)嵌PCI數(shù)據(jù)傳輸硬件平臺和驅(qū)動開發(fā)方案已用于多模衛(wèi)星信號仿真器中,該方案數(shù)據(jù)傳輸穩(wěn)定,速度快(可達115 MB/s),采用WinDriver軟件工具包開發(fā)DSP6416內(nèi)嵌的PCI設(shè)備驅(qū)動程序,不但可以極大地縮短開發(fā)周期,而且還提高了衛(wèi)星信號仿真器的開發(fā)效率和整體性能。 function ImgZoom(Id)//重新設(shè)置圖片大小 防止撐破表格 { var w = $(Id).width; var m = 650; if(w


          上一頁 1 2 3 下一頁

          評論


          相關(guān)推薦

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

          關(guān)閉