亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種星載軟件的硬件屏蔽層以及星上數(shù)據(jù)通信方法

文檔序號:6381105閱讀:332來源:國知局
專利名稱:一種星載軟件的硬件屏蔽層以及星上數(shù)據(jù)通信方法
技術(shù)領(lǐng)域
本發(fā)明屬于航天器數(shù)據(jù)通信領(lǐng)域。
背景技術(shù)
本發(fā)明涉及航天器的硬件設(shè)備和應(yīng)用軟件之間的通信,現(xiàn)有的航天器星上通信系統(tǒng)主要涉及硬件設(shè)備層和軟件應(yīng)用層,此類分層方式導(dǎo)致航天器星載軟件中應(yīng)用層對于硬件端口的訪問大多是直接讀寫硬件端口地址,這樣一方面要求應(yīng)用軟件開發(fā)人員對硬件工作過程要非常清楚,導(dǎo)致軟件的可移植性和可維護性比較差,另一方面在軟件應(yīng)用層存在很多操作硬件的代碼,導(dǎo)致硬件和應(yīng)用層的層次結(jié)構(gòu)模糊,軟件的可靠性比較差。在不直接讀寫硬件端口地址的情況下,實現(xiàn)應(yīng)用軟件對硬件設(shè)備的適用,并提高應(yīng)用軟件的可移植性和可維護性是航天器星上通信系統(tǒng)的發(fā)展方向。因此建立新型的航天器星上系統(tǒng)分層結(jié)構(gòu),是亟待解決的問題

發(fā)明內(nèi)容
有鑒于此,本發(fā)明提出了一種星載軟件的硬件屏蔽層,本發(fā)明主要針對星載軟件的應(yīng)用特點以及硬件設(shè)備的功能,設(shè)計特定的接口函數(shù),形成屏蔽層,將硬件設(shè)備和應(yīng)用軟件隔離;建立硬件層-屏蔽層-軟件應(yīng)用層的三層結(jié)構(gòu),使得航天器星上通信系統(tǒng)的層次結(jié)構(gòu)清晰?;谏鲜瞿康模景l(fā)明的技術(shù)方案如下有益效果—、本方法將硬件設(shè)備和應(yīng)用軟件隔離,僅通過接口函數(shù)進行通信,在此基礎(chǔ)上建立了硬件設(shè)備層、屏蔽層和軟件應(yīng)用層的三層結(jié)構(gòu)設(shè)計,使得航天器星上通信系統(tǒng)的層次結(jié)構(gòu)清晰,提高了軟件的可移植性和可維護性;二、該方法針對硬件設(shè)備的功能特點以及應(yīng)用軟件的需求,設(shè)計了符合通信接口的標(biāo)準(zhǔn)化的接口函數(shù),通過對星上通信系統(tǒng)各功能流程進行分析,本設(shè)計總結(jié)出必要的幾種功能,并針對各功能設(shè)計了接口集合;本設(shè)計采用較少的接口函數(shù)即可涵蓋硬件設(shè)備的各種功能,占用系統(tǒng)資源少;同時,針對相同功能的不同應(yīng)用,本發(fā)明設(shè)計了不同的函數(shù)實現(xiàn)其應(yīng)用,例如所有通道遙測采集使能函數(shù)和單通道遙測采集使能函數(shù)、所有通道遙測數(shù)據(jù)讀取函數(shù)和單通道遙測數(shù)據(jù)讀取函數(shù),這種設(shè)計提高了屏蔽層的處理速度,能夠更為合理有效地實現(xiàn)應(yīng)用軟件對硬件設(shè)備的屏蔽。


圖1硬件設(shè)備和應(yīng)用軟件的關(guān)系;圖2 (a)所有通道遙測數(shù)據(jù)采集流程; (b)單通道遙測數(shù)據(jù)采集流程;圖3 (a)遙測數(shù)據(jù)輸出流程;
(b)遙測輸出中斷服務(wù)程序;圖4遙控數(shù)據(jù)接收流程;圖5指令輸出流程。
具體實施例方式本發(fā)明針對不同硬件設(shè)備的功能,同時結(jié)合應(yīng)用軟件的需求,設(shè)計了星載軟件的硬件屏蔽層,該屏蔽層包括各種硬件設(shè)備的接口集合,每個硬件設(shè)備的接口集合包含能夠?qū)崿F(xiàn)特定功能的接口,所有接口均通過接口函數(shù)的形式實現(xiàn),應(yīng)用軟件使用特定的調(diào)用參數(shù)可調(diào)用每個接口函數(shù),接口函數(shù)具有一定返回值。接口函數(shù)對應(yīng)用軟件不可見。本發(fā)明同時設(shè)計了星上數(shù)據(jù)的通信方法,即使用上述屏蔽層,實現(xiàn)應(yīng)用軟件與硬件設(shè)備的數(shù)據(jù)通信,該方法使得應(yīng)用軟件無需直接讀寫硬件端口地址,僅調(diào)用接口函數(shù)即可完成與硬件設(shè)備之間的通信。本發(fā)明主要用于航天器硬件設(shè)備和應(yīng)用軟件之間通信。下面結(jié)合附圖并舉實施例,對本發(fā)明進行詳細描述。如圖1所示,本實施例中所設(shè)計的屏蔽層設(shè)置在應(yīng)用軟件與硬件設(shè)備之間,包括4個接口集合,每個接口集合對應(yīng)一個能夠?qū)崿F(xiàn)特定功能的硬件設(shè)備,其中4個接口結(jié)合分別為遙測采集接口集合、遙測輸出接口集合、遙控接收接口集合、指令輸出接口集合,所有接口均使用接口函數(shù)來實現(xiàn)數(shù)據(jù)傳遞以及硬件控制。各接口集合所包含的接口函數(shù)具體如下(I)遙測采集接口集合包括遙測采集設(shè)備初始化接口、所有通道遙測采集使能接口、遙測采集禁止接口、單通道遙測采集使能接口、所有通道遙測數(shù)據(jù)讀取接口、單通道遙測數(shù)據(jù)讀取接口。遙測采集設(shè)備初始化函數(shù)無調(diào)用參數(shù),返回遙測采集設(shè)備屬性指針;遙測采集設(shè)備初始化函數(shù)對遙測采集設(shè)備中包括所有通道遙測采集使能標(biāo)識、遙測采集完成標(biāo)識、單通道遙測采集使能標(biāo)識、遙測采集狀態(tài)、遙測采集設(shè)備緩存區(qū)、通道號、單通道遙測數(shù)據(jù)緩存區(qū)、設(shè)備屬性指針在內(nèi)的設(shè)備屬性進行初始化;所有通道遙測采集使能函數(shù)的調(diào)用參數(shù)為遙測采集設(shè)備屬性指針,無返回值;所有通道遙測采集使能函數(shù)根據(jù)遙測采集設(shè)備屬性指針,啟動遙測采集設(shè)備,遙測采集設(shè)備開始采集所有通道的遙測數(shù)據(jù),單通道遙測采集使能函數(shù)的調(diào)用參數(shù)為設(shè)備屬性指針和通道號,無返回值;單通道遙測采集使能函數(shù)根據(jù)遙測采集設(shè)備屬性指針,啟動遙測采集設(shè)備,遙測采集設(shè)備開始按通道號采集特定通道的遙測數(shù)據(jù);所有通道遙測讀取函數(shù)的調(diào)用參數(shù)為遙測采集設(shè)備屬性指針和應(yīng)用軟件中遙測數(shù)據(jù)存儲地址,返回遙測數(shù)據(jù)讀取成功標(biāo)識或遙測數(shù)據(jù)讀取失敗標(biāo)識;所有通道遙測讀取函數(shù)檢測判斷遙測采集完成標(biāo)識是否有效,若有效則根據(jù)遙測采集設(shè)備屬性指針從遙測采集設(shè)備讀取所有通道遙測數(shù)據(jù),存入應(yīng)用軟件中遙測數(shù)據(jù)存儲地址,并返回遙測數(shù)據(jù)讀取成功標(biāo)識;若遙測采集完成標(biāo)識無效,則不做任何處理,返回遙測數(shù)據(jù)讀取失敗標(biāo)識;單通道遙測讀取函數(shù)的調(diào)用參數(shù)為遙測采集設(shè)備屬性指針、應(yīng)用軟件中遙測數(shù)據(jù)存儲地址和通道號,檢測判斷遙測采集完成標(biāo)識是否有效,若有效則根據(jù)遙測采集設(shè)備屬性指針從遙測采集設(shè)備按通道號讀取單通道遙測數(shù)據(jù),存入應(yīng)用軟件中遙測數(shù)據(jù)存儲地址,并返回遙測數(shù)據(jù)讀取成功標(biāo)識;若遙測采集完成標(biāo)識無效,則不做任何處理,返回遙測數(shù)據(jù)讀取失敗標(biāo)識;遙測采集禁止函數(shù)的調(diào)用參數(shù)為遙測采集設(shè)備屬性指針,遙測采集禁止函數(shù)控制遙測采集設(shè)備停止采集遙測無返回值。如圖2 Ca)所示,所有通道遙測采集過程如下1、應(yīng)用軟件首先調(diào)用設(shè)備初始化函數(shù),設(shè)備初始化函數(shù)對遙測采集設(shè)備屬性進行初始化,并返回設(shè)備屬性指針;2、應(yīng)用軟件調(diào)用所有通道遙測采集使能函數(shù),啟動遙測采集設(shè)備開始采集所有通道遙測數(shù)據(jù),無返回值;3、應(yīng)用軟件在等待遙測采集設(shè)備采集完所有通道遙測數(shù)據(jù)所需的理論時間之后,提出中斷并進入遙測采集完成中斷服務(wù)程序,遙測采集完成中斷服務(wù)程序中設(shè)置遙測采集完成標(biāo)識為有效,隨后退出遙測采集完成中斷服務(wù)程序,調(diào)用遙測數(shù)據(jù)讀取函數(shù);在所有通道遙測數(shù)據(jù)采集完成之前,遙測采集完成標(biāo)識為無效;4、所有通道遙測數(shù)據(jù)讀取函數(shù)檢測采集完成標(biāo)識是否有效,從而判斷遙測采集設(shè)備的遙測采集過程是否完成,如果檢測采集完成標(biāo)識有效,所有通道遙測數(shù)據(jù)讀取函數(shù)則從遙測采集設(shè)備讀取所有通道遙測數(shù)據(jù)并輸出給應(yīng)用軟件,同時返回讀取成功標(biāo)識;如果檢測采集完成標(biāo)識無效,則遙測采集過程尚未完成,遙測數(shù)據(jù)讀取函數(shù)不給應(yīng)用軟件輸出遙測數(shù)據(jù),同時返回讀取失敗標(biāo)識;5、如果應(yīng)用軟件需要遙測采集設(shè)備停止采集遙測,則調(diào)用遙測采集禁止函數(shù)。如圖2 (b)所示,單通道遙測采集過程如下1、應(yīng)用軟件首先調(diào)用設(shè)備初始化函數(shù),設(shè)備初始化函數(shù)對遙測采集設(shè)備屬性進行初始化,并返回設(shè)備屬性指針;2、應(yīng)用軟件調(diào)用單通道遙測采集使能函數(shù),啟動遙測采集設(shè)備開始按通道號采集單通道遙測數(shù)據(jù),無返回值;3、應(yīng)用軟件在等待遙測采集設(shè)備采集完單通道遙測數(shù)據(jù)所需的理論時間之后,提出中斷并進入遙測采集完成中斷服務(wù)程序,遙測采集完成中斷服務(wù)程序中設(shè)置遙測采集完成標(biāo)識為有效,隨后退出遙測采集完成中斷服務(wù)程序,調(diào)用遙測數(shù)據(jù)讀取函數(shù);在單通道遙測數(shù)據(jù)采集完成之前,遙測采集完成標(biāo)識為無效;4、單通道遙測數(shù)據(jù)讀取函數(shù)檢測采集完成標(biāo)識是否有效,從而判斷遙測采集設(shè)備的遙測采集過程是否完成,如果檢測采集完成標(biāo)識有效,單通道遙測數(shù)據(jù)讀取函數(shù)則按通道號從遙測采集設(shè)備讀取單通道遙測數(shù)據(jù)并輸出給應(yīng)用軟件,同時返回讀取成功標(biāo)識;如果檢測采集完成標(biāo)識無效,則遙測采集過程尚未完成,遙測數(shù)據(jù)讀取函數(shù)不給應(yīng)用軟件輸出遙測數(shù)據(jù),同時返回讀取失敗標(biāo)識;5、如果應(yīng)用軟件需要遙測采集設(shè)備停止采集遙測,則調(diào)用遙測采集禁止函數(shù)。(2)遙測輸出接口集合包括遙測輸出設(shè)備初始化接口、遙測數(shù)據(jù)輸出接口、獲取下一幀星時接口、獲取同步標(biāo)識接口、設(shè)置碼速率接口、設(shè)置編碼方式接口。遙測輸出設(shè)備初始化函數(shù)無調(diào)用參數(shù),返回設(shè)備屬性指針;遙測輸出設(shè)備初始化函數(shù)對遙測輸出設(shè)備中包括遙測輸出設(shè)備緩存區(qū)、緩存區(qū)滿標(biāo)識、同步標(biāo)識、緩存區(qū)輸出標(biāo)識、緩存區(qū)更新標(biāo)識、數(shù)據(jù)輸出地址指針、星時存儲區(qū)、碼速率和編碼方式、碼速率和編碼方式切換狀態(tài)標(biāo)識、碼速率和編碼方式配置寄存器在內(nèi)的屬性進行初始化;遙測數(shù)據(jù)輸出函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、應(yīng)用軟件中的遙測數(shù)據(jù)存儲地址和字節(jié)數(shù),返回遙測數(shù)據(jù)輸出成功標(biāo)識或者遙測數(shù)據(jù)輸出失敗標(biāo)識;遙測數(shù)據(jù)輸出函數(shù)根據(jù)遙測輸出設(shè)備屬性指針檢測遙測輸出設(shè)備當(dāng)前是否有空緩存區(qū),如果有空緩存區(qū),遙測輸出函數(shù)接收應(yīng)用軟件發(fā)送的遙測數(shù)據(jù)并存儲到空緩存區(qū),并給應(yīng)用軟件返回遙測數(shù)據(jù)輸出成功標(biāo)識,其中應(yīng)用軟件發(fā)送的遙測數(shù)據(jù)存儲在應(yīng)用軟件中的遙測數(shù)據(jù)存儲地址所指向的存儲區(qū),應(yīng)用軟件中的數(shù)據(jù)存儲地址的大小為調(diào)用參數(shù)所給定的字節(jié)數(shù);如果沒有空緩存區(qū),遙測輸出函數(shù)只給應(yīng)用軟件返回遙測數(shù)據(jù)輸出失敗標(biāo)識;獲取下一幀星時函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、應(yīng)用軟件中的星時存儲地址,無返回值;獲取下一幀星時函數(shù)根據(jù)遙測輸出設(shè)備屬性指針,在遙測輸出設(shè)備中的星時存儲區(qū)中獲取下一幀星時,并將星時存儲于應(yīng)用軟件中的星時存儲地址中;獲取同步標(biāo)識函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針,返回同步信息標(biāo)識有效Y或者同步信息標(biāo)識無效N ;獲取同步標(biāo)識函數(shù)檢測遙測輸出設(shè)備中的同步標(biāo)識,若同步標(biāo)識為有效,則返回同步信息標(biāo)識有效Y ;若同步標(biāo)識為無效,則返回同步信息標(biāo)識無效N。設(shè)置碼速率函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、碼速率標(biāo)識,無返回值;設(shè)置碼速率函數(shù)記錄碼速率標(biāo)識,并設(shè)置切換碼速率標(biāo)識為有效;設(shè)置編碼方式函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、編碼方式標(biāo)識,無返回值;設(shè)置編碼方式函數(shù)記錄編碼方式標(biāo)識,并設(shè)置切換編碼方式標(biāo)識為有效。如圖3 Ca)所示,遙測數(shù)據(jù)讀取操作如下a、應(yīng)用軟件首先調(diào)用遙測輸出設(shè)備初始化函數(shù),對遙測輸出設(shè)備進行屬性初始化,并獲取遙測輸出設(shè)備屬性指針;b、應(yīng)用軟件調(diào)用遙測數(shù)據(jù)輸出函數(shù),遙測數(shù)據(jù)輸出函數(shù)中判斷當(dāng)前是否有空緩存區(qū),如果有則接收應(yīng)用軟件發(fā)送的遙測數(shù)據(jù)并存儲到空緩存區(qū),并給應(yīng)用軟件返回遙測數(shù)據(jù)輸出成功標(biāo)識。如果沒有空緩存區(qū)則只給應(yīng)用軟件返回遙測數(shù)據(jù)輸出失敗標(biāo)識。C、應(yīng)用軟件周期性調(diào)用獲取同步標(biāo)識函數(shù),檢測同步標(biāo)識是否為有效,判斷當(dāng)前是否具有同步信息如果同步標(biāo)識為有效,應(yīng)用軟件則調(diào)用遙測數(shù)據(jù)輸出函數(shù)將新的遙測數(shù)據(jù)發(fā)送給遙測輸出設(shè)備,如果沒有同步信息則應(yīng)用軟件不作處理。其中調(diào)用獲取同步標(biāo)識函數(shù)的周期為每幀遙測幀數(shù)據(jù)輸出的時間。d、應(yīng)用軟件在每次組織遙測幀前調(diào)用獲取下一幀星時函數(shù),得到組織到遙測幀中的星時。e、當(dāng)?shù)孛孀⑷氪a速率切換指令后,應(yīng)用軟件調(diào)用設(shè)置碼速率函數(shù),記錄新碼速率并設(shè)置切換碼速率標(biāo)識,無返回值。f、當(dāng)?shù)孛孀⑷刖幋a方式切換指令后,應(yīng)用軟件調(diào)用設(shè)置編碼方式函數(shù),記錄新編碼方式并設(shè)置切換編碼方式標(biāo)識,無返回值。g、其中遙測輸出設(shè)備每輸出8字節(jié)數(shù)據(jù)提出一個中斷,進入遙測輸出中斷服務(wù)程序,遙測輸出中斷服務(wù)程序中將下一次的8字節(jié)寫入遙測輸出設(shè)備的緩存區(qū)中等待輸出。遙測輸出中斷服務(wù)程序每輸出完一幀數(shù)據(jù)后判斷是否有切換碼速率標(biāo)識,如果有切換碼速率標(biāo)識則啟用新碼速率,如果沒有切換碼速率標(biāo)識則不作處理;同時判斷是否有切換編碼方式標(biāo)識,如果有切換編碼方式標(biāo)識則啟用新編碼方式,如果沒有切換編碼方式標(biāo)識則不作處理。遙測輸出設(shè)備設(shè)計3個緩存區(qū),前兩個緩存區(qū)用來緩存應(yīng)用軟件發(fā)送的遙測數(shù)據(jù),第三個緩存區(qū)為空閑幀緩存區(qū)。正常情況下,遙測輸出中斷服務(wù)程序輸出前兩個緩存區(qū)中的遙測數(shù)據(jù),輸出完一個緩存區(qū)中的數(shù)據(jù)后獲取下一幀星時,存儲到星時存儲區(qū),設(shè)置同步標(biāo)識,設(shè)置緩存區(qū)空標(biāo)識,同時判斷另外一個緩存區(qū)是否已經(jīng)有新的遙測數(shù)據(jù)存入,如果已經(jīng)存入新的遙測數(shù)據(jù)則切換緩存區(qū),輸出新的遙測數(shù)據(jù)。如果另外一個緩存區(qū)尚未存入新的遙測數(shù)據(jù),則切換到第三個緩存區(qū),輸出空閑幀。遙測輸出中斷服務(wù)程序流程如圖3 (b)所示。(3)遙控接收接口集合包括遙控接收設(shè)備初始化接口和遙控數(shù)據(jù)接收接口。遙控接收設(shè)備初始化函數(shù)無調(diào)用參數(shù),并返回遙控接收設(shè)備屬性指針;遙控接收設(shè)備初始化函數(shù)對遙控接收設(shè)備的包括遙控通道緩存區(qū)初始化、遙控通道結(jié)束標(biāo)識在內(nèi)的屬性進行初始化。遙控數(shù)據(jù)接收函數(shù)的調(diào)用參數(shù)為遙控接收設(shè)備屬性指針和遙控數(shù)據(jù)存儲地址,遙控數(shù)據(jù)接收函數(shù)檢測遙控通道接收結(jié)束標(biāo)識,如果判斷到遙控通道結(jié)束標(biāo)識則將該通道的遙控數(shù)據(jù)輸出給應(yīng)用軟件,并給應(yīng)用軟件返回遙控數(shù)據(jù)接收成功標(biāo)識;如果沒有判斷到遙控通道結(jié)束標(biāo)識則不作處理,只給應(yīng)用軟件返回遙控數(shù)據(jù)接收失敗標(biāo)識。如圖4所示,遙控接收過程如下1、應(yīng)用軟件調(diào)用設(shè)備初始化函數(shù),對遙控接收設(shè)備進行初始化,并獲取設(shè)備屬性指針;2、應(yīng)用軟件調(diào)用遙控數(shù)據(jù)接收函數(shù)來獲取遙控數(shù)據(jù)。遙控數(shù)據(jù)接收函數(shù)檢測遙控通道接收結(jié)束標(biāo)識,如果判斷到遙控通道結(jié)束標(biāo)識則將該通道的遙控數(shù)據(jù)輸出給應(yīng)用軟件,如果沒有判斷到遙控通道結(jié)束標(biāo)識則不作處理,只給應(yīng)用軟件返回遙控數(shù)據(jù)接收失敗標(biāo)識。其中遙控通道接收結(jié)束標(biāo)識由遙控中斷服務(wù)程序設(shè)置。遙控中斷服務(wù)程序每次接收8字節(jié),將遙控數(shù)據(jù)存儲到遙控通道緩存區(qū),記錄接收到的字節(jié)數(shù),判斷通道接收是否結(jié)束,如果結(jié)束則設(shè)置標(biāo)識表明遙控通道接收結(jié)束。(4)指令輸出接口集合包括指令輸出設(shè)備初始化接口和指令碼發(fā)送接口。指令輸出設(shè)備初始化函數(shù)無調(diào)用參數(shù),并返回指令輸出設(shè)備屬性指針;指令輸出設(shè)備初始化函數(shù)在指令輸出設(shè)備中創(chuàng)建80ms定時器,完成指令輸出設(shè)備屬性的初始化。指令碼發(fā)送函數(shù)的調(diào)用參數(shù)為指令輸出設(shè)備屬性指針和指令碼,指令碼發(fā)送函數(shù)根據(jù)指令輸出設(shè)備指針將指令碼寫入指令輸出設(shè)備的端口地址,然后啟動80ms定時器,無返回值。如圖5所示,指令輸出過程如下1、應(yīng)用軟件調(diào)用設(shè)備初始化函數(shù),對指令輸出設(shè)備進行初始化,并獲取設(shè)備屬性指針;2、應(yīng)用軟件調(diào)用指令碼發(fā)送函數(shù),指令碼作為函數(shù)參數(shù)傳遞。指令碼發(fā)送函數(shù)則將指令碼寫入指令輸出設(shè)備端口地址,然后啟動80ms定時器,開始指令脈沖輸出。80ms定時器到時后給相應(yīng)的硬件端口地址寫入?yún)?shù)停止指令脈沖,即指令發(fā)送完成。綜上所述,以上僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.一種星載軟件的硬件屏蔽層,其特征在于,屏蔽層位于應(yīng)用軟件與硬件設(shè)備之間,包括4個接口集合,每個接口集合對應(yīng)一個能夠?qū)崿F(xiàn)特定功能的硬件設(shè)備,所述的4個接口集合為遙測采集接口集合、遙測輸出接口集合、遙控接收接口集合、指令輸出接口集合,所有接口均以接口函數(shù)的形式實現(xiàn);各接口集合所包含的接口函數(shù)具體如下(I)遙測采集接口集合包括遙測采集設(shè)備初始化接口、所有通道遙測采集使能接口、 遙測采集禁止接口、單通道遙測采集使能接口、所有通道遙測數(shù)據(jù)讀取接口、單通道遙測數(shù)據(jù)讀取接口;遙測采集設(shè)備初始化函數(shù)無調(diào)用參數(shù),返回遙測采集設(shè)備屬性指針;遙測采集設(shè)備初始化函數(shù)對遙測采集設(shè)備中的設(shè)備屬性進行初始化;所有通道遙測采集使能函數(shù)的調(diào)用參數(shù)為遙測采集設(shè)備屬性指針,無返回值;所有通道遙測采集使能函數(shù)根據(jù)遙測采集設(shè)備屬性指針,啟動遙測采集設(shè)備,遙測采集設(shè)備開始采集所有通道的遙測數(shù)據(jù);單通道遙測采集使能函數(shù)的調(diào)用參數(shù)為設(shè)備屬性指針和通道號,無返回值;單通道遙測采集使能函數(shù)根據(jù)遙測采集設(shè)備屬性指針,啟動遙測采集設(shè)備,遙測采集設(shè)備開始按通道號采集特定通道的遙測數(shù)據(jù);所有通道遙測讀取函數(shù)的調(diào)用參數(shù)為遙測采集設(shè)備屬性指針和應(yīng)用軟件中遙測數(shù)據(jù)存儲地址,返回遙測數(shù)據(jù)讀取成功標(biāo)識或遙測數(shù)據(jù)讀取失敗標(biāo)識;所有通道遙測讀取函數(shù)檢測判斷遙測采集完成標(biāo)識是否有效,若有效則根據(jù)遙測采集設(shè)備屬性指針從遙測采集設(shè)備讀取所有通道遙測數(shù)據(jù),存入應(yīng)用軟件中遙測數(shù)據(jù)存儲地址,并返回遙測數(shù)據(jù)讀取成功標(biāo)識;若遙測采集完成標(biāo)識無效,則只給應(yīng)用軟件返回遙測數(shù)據(jù)讀取失敗標(biāo)識;單通道遙測讀取函數(shù)的調(diào)用參數(shù)為遙測采集設(shè)備屬性指針、應(yīng)用軟件中的遙測數(shù)據(jù)存儲地址和通道號,返回遙測數(shù)據(jù)讀取成功標(biāo)識或遙測數(shù)據(jù)讀取失敗標(biāo)識;單通道遙測讀取函數(shù)檢測判斷遙測采集完成標(biāo)識是否有效,若有效則根據(jù)遙測采集設(shè)備屬性指針從遙測采集設(shè)備按通道號讀取單通道遙測數(shù)據(jù),存入應(yīng)用軟件中的遙測數(shù)據(jù)存儲地址中,并返回遙測數(shù)據(jù)讀取成功標(biāo)識;若遙測采集完成標(biāo)識無效,只給應(yīng)用軟件返回遙測數(shù)據(jù)讀取失敗標(biāo)遙測采集禁止函數(shù)的調(diào)用參數(shù)為遙測采集設(shè)備屬性指針,無返回值;遙測采集禁止函數(shù)控制遙測采集設(shè)備停止采集遙測;(2)遙測輸出接口集合包括遙測輸出設(shè)備初始化接口、遙測數(shù)據(jù)輸出接口、獲取下一幀星時接口、獲取同步標(biāo)識接口、設(shè)置碼速率接口、設(shè)置編碼方式接口 ;遙測輸出設(shè)備初始化函數(shù)無調(diào)用參數(shù),返回設(shè)備屬性指針;遙測輸出設(shè)備初始化函數(shù)對遙測輸出設(shè)備中的屬性進行初始化;遙測數(shù)據(jù)輸出函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、應(yīng)用軟件中的遙測數(shù)據(jù)存儲地址和字節(jié)數(shù),返回遙測數(shù)據(jù)輸出成功標(biāo)識或者遙測數(shù)據(jù)輸出失敗標(biāo)識;遙測數(shù)據(jù)輸出函數(shù)根據(jù)遙測輸出設(shè)備屬性指針檢測遙測輸出設(shè)備當(dāng)前是否有空緩存區(qū),如果有空緩存區(qū),遙測輸出函數(shù)接收應(yīng)用軟件發(fā)送的遙測數(shù)據(jù)并存儲到空緩存區(qū),并給應(yīng)用軟件返回遙測數(shù)據(jù)輸出成功標(biāo)識,其中應(yīng)用軟件發(fā)送的遙測數(shù)據(jù)存儲在應(yīng)用軟件中的遙測數(shù)據(jù)存儲地址所指向的存儲區(qū),應(yīng)用軟件中的數(shù)據(jù)存儲地址的大小為調(diào)用參數(shù)所給定的字節(jié)數(shù);如果沒有空緩存區(qū),遙測輸出函數(shù)只給應(yīng)用軟件返回遙測數(shù)據(jù)輸出失敗標(biāo)識;獲取下一幀星時函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、應(yīng)用軟件中的星時存儲地址,無返回值;獲取下一幀星時函數(shù)根據(jù)遙測輸出設(shè)備屬性指針,在遙測輸出設(shè)備中的星時存儲區(qū)中獲取下一幀星時,并將星時存儲于應(yīng)用軟件中的星時存儲地址中;獲取同步標(biāo)識函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針,返回同步信息標(biāo)識有效Y或者同步信息標(biāo)識無效N;獲取同步標(biāo)識函數(shù)檢測遙測輸出設(shè)備中的同步標(biāo)識,若同步標(biāo)識為有效,則返回同步信息標(biāo)識有效Y ;若同步標(biāo)識為無效,則返回同步信息標(biāo)識無效N ;設(shè)置碼速率函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、碼速率標(biāo)識,無返回值;設(shè)置碼速率函數(shù)記錄碼速率標(biāo)識,并設(shè)置切換碼速率標(biāo)識有效;設(shè)置編碼方式函數(shù)的調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、編碼方式標(biāo)識,,無返回值; 設(shè)置編碼方式函數(shù)記錄編碼方式標(biāo)識,并設(shè)置切換編碼方式標(biāo)識為有效;(3)遙控接收接口集合包括遙控接收設(shè)備初始化接口和遙控數(shù)據(jù)接收接口;遙控接收設(shè)備初始化函數(shù)無調(diào)用參數(shù),并返回遙控接收設(shè)備屬性指針;遙控接收設(shè)備初始化函數(shù)對遙控接收設(shè)備的屬性進行初始化;遙控數(shù)據(jù)接收函數(shù)的調(diào)用參數(shù)為遙控接收設(shè)備屬性指針和遙控數(shù)據(jù)存儲地址,遙控數(shù)據(jù)接收函數(shù)檢測遙控通道接收結(jié)束標(biāo)識,如果判斷到遙控通道結(jié)束標(biāo)識則將該通道的遙控數(shù)據(jù)輸出給應(yīng)用軟件,存儲到應(yīng)用軟件中遙控數(shù)據(jù)存儲地址中,并給應(yīng)用軟件返回遙控數(shù)據(jù)接收成功標(biāo)識;如果沒有判斷到遙控通道結(jié)束標(biāo)識則不作處理,只給應(yīng)用軟件返回遙控數(shù)據(jù)接收失敗標(biāo)識;(4)指令輸出接口集合包括指令輸出設(shè)備初始化接口和指令碼發(fā)送接口;指令輸出設(shè)備初始化函數(shù)無調(diào)用參數(shù),并返回指令輸出設(shè)備屬性指針;指令輸出設(shè)備初始化函數(shù)在指令輸出設(shè)備中創(chuàng)建80ms定時器,完成指令輸出設(shè)備屬性的初始化;指令碼發(fā)送函數(shù)的調(diào)用參數(shù)為指令輸出設(shè)備屬性指針和指令碼,指令碼發(fā)送函數(shù)將根據(jù)指令輸出設(shè)備屬性指針,將指令碼寫入指令輸出設(shè)備端口地址,然后啟動80ms定時器, 無返回值。
2.一種星載軟件的星上數(shù)據(jù)通信方法,其特征在于,在應(yīng)用軟件與硬件設(shè)備之間設(shè)置如權(quán)利要求1所述的一種星載軟件的硬件屏蔽層,星載軟件的星上數(shù)據(jù)通信包括如下過所有通道遙測采集過程如下1)應(yīng)用軟件首先調(diào)用設(shè)備初始化函數(shù),無調(diào)用參數(shù);設(shè)備初始化函數(shù)對遙測采集設(shè)備中的設(shè)備屬性進行初始化,并返回設(shè)備屬性指針;2)應(yīng)用軟件調(diào)用所有通道遙測采集使能函數(shù),調(diào)用參數(shù)為遙測采集設(shè)備屬性指針;所有通道遙測采集使能函數(shù)根據(jù)遙測采集設(shè)備屬性指針,啟動遙測采集設(shè)備,遙測采集設(shè)備開始采集所有通道的遙測數(shù)據(jù),無返回值;3)應(yīng)用軟件等待一定時間,所述一定時間為理論上遙測采集設(shè)備采集完所有通道遙測數(shù)據(jù)所用的時間,在遙測采集設(shè)備采集完所有通道遙測數(shù)據(jù)后應(yīng)用軟件提出中斷并進入遙測采集完成中斷服務(wù)程序,遙測采集完成中斷服務(wù)程序中設(shè)置遙測采集完成標(biāo)識為有效, 隨后退出遙測采集完成中斷服務(wù)程序,調(diào)用所有通道遙測數(shù)據(jù)讀取函數(shù),調(diào)用參數(shù)為遙測采集設(shè)備屬性指針和應(yīng)用軟件中遙測數(shù)據(jù)存儲地址;在采集所有通道遙測數(shù)據(jù)完成之前,遙測采集完成標(biāo)識為無效;4)所有通道遙測數(shù)據(jù)讀取函數(shù)檢測采集完成標(biāo)識是否有效,從而判斷所有通道遙測采集設(shè)備的遙測采集過程是否完成,如果檢測到采集完成標(biāo)識有效,所有通道遙測數(shù)據(jù)讀取函數(shù)則根據(jù)遙測采集設(shè)備屬性指針從遙測采集設(shè)備中讀取所有通道遙測數(shù)據(jù)并輸出給應(yīng)用軟件,同時返回讀取成功標(biāo)識;如果檢測到采集完成標(biāo)識無效,則遙測采集過程尚未完成,遙測數(shù)據(jù)讀取函數(shù)不給應(yīng)用軟件輸出遙測數(shù)據(jù),同時返回讀取失敗標(biāo)識;5)如果應(yīng)用軟件需要遙測采集設(shè)備停止采集遙測,則調(diào)用遙測采集禁止函數(shù),調(diào)用參數(shù)為遙測采集設(shè)備屬性指針,遙測采集禁止函數(shù)控制遙測采集設(shè)備停止采集遙測,無返回值;單通道遙測采集過程如下1)應(yīng)用軟件首先調(diào)用設(shè)備初始化函數(shù),無調(diào)用參數(shù);設(shè)備初始化函數(shù)對遙測采集設(shè)備中的設(shè)備屬性進行初始化,并返回設(shè)備屬性指針;2)應(yīng)用軟件調(diào)用單通道遙測采集使能函數(shù),調(diào)用參數(shù)為遙測采集設(shè)備屬性指針和通道號;單通道遙測采集使能函數(shù)根據(jù)遙測采集設(shè)備屬性指針,啟動遙測采集設(shè)備,遙測采集設(shè)備開始按通道號采集單通道的遙測數(shù)據(jù),無返回值;3)應(yīng)用軟件等待一定時間,所述一定時間為理論上遙測采集設(shè)備采集完單通道遙測數(shù)據(jù)所用的時間,在遙測采集設(shè)備采集完單通道遙測數(shù)據(jù)后應(yīng)用軟件提出中斷并進入遙測采集完成中斷服務(wù)程序,遙測采集完成中斷服務(wù)程序中設(shè)置單通道遙測采集完成標(biāo)識為有效,隨后退出遙測采集完成中斷服務(wù)程序,調(diào)用單通道遙測數(shù)據(jù)讀取函數(shù),調(diào)用參數(shù)為遙測采集設(shè)備屬性指針、應(yīng)用軟件中遙測數(shù)據(jù)存儲地址和通道號;4)單通道遙測數(shù)據(jù)讀取函數(shù)檢測采集完成標(biāo)識是否為·有效,從而判斷遙測采集設(shè)備的遙測采集過程是否完成,如果檢測采集完成標(biāo)識有效,遙測數(shù)據(jù)讀取函數(shù)則根據(jù)遙測采集設(shè)備屬性指針從遙測采集設(shè)備中按通道號讀取單通道遙測數(shù)據(jù)并輸出給應(yīng)用軟件,同時返回讀取成功標(biāo)識;如果檢測采集完成標(biāo)識無效,則遙測采集過程尚未完成,遙測數(shù)據(jù)讀取函數(shù)不給應(yīng)用軟件輸出遙測數(shù)據(jù),同時返回讀取失敗標(biāo)識;5)如果應(yīng)用軟件需要遙測采集設(shè)備停止采集遙測,則調(diào)用遙測采集禁止函數(shù),調(diào)用參數(shù)為遙測采集設(shè)備屬性指針,遙測采集禁止函數(shù)控制遙測采集設(shè)備停止采集遙測,無返回值;遙測數(shù)據(jù)輸出操作如下a)應(yīng)用軟件首先調(diào)用遙測輸出設(shè)備初始化函數(shù),無調(diào)用參數(shù),遙測輸出設(shè)備初始化函數(shù)對遙測輸出設(shè)備中的屬性進行初始化,并返回遙測輸出設(shè)備屬性指針;b)應(yīng)用軟件調(diào)用遙測數(shù)據(jù)輸出函數(shù),調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、應(yīng)用軟件中的遙測數(shù)據(jù)存儲地址和字節(jié)數(shù),遙測數(shù)據(jù)輸出函數(shù)中判斷當(dāng)前是否有空緩存區(qū),如果有則接收應(yīng)用軟件發(fā)送的遙測數(shù)據(jù)并存儲到空緩存區(qū),并給應(yīng)用軟件返回遙測數(shù)據(jù)輸出成功標(biāo)識;如果沒有空緩存區(qū)則只給應(yīng)用軟件返回遙測數(shù)據(jù)輸出失敗標(biāo)識;c)應(yīng)用軟件周期性調(diào)用獲取同步標(biāo)識函數(shù),調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針,同步標(biāo)識函數(shù)檢測同步標(biāo)識是否為有效,判斷當(dāng)前是否具有同步信息如果同步標(biāo)識為有效,應(yīng)用軟件則調(diào)用遙測數(shù)據(jù)輸出函數(shù)將新的遙測數(shù)據(jù)發(fā)送給遙測輸出設(shè)備,如果沒有同步信息則應(yīng)用軟件不作處理;其中調(diào)用獲取同步標(biāo)識函數(shù)的周期為每幀遙測幀數(shù)據(jù)輸出的時間,返回值為同步信息標(biāo)識有效Y或者同步標(biāo)識無效N;d)應(yīng)用軟件在每次組織遙測幀前調(diào)用獲取下一幀星時函數(shù),調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、應(yīng)用軟件中的星時存儲地址,獲取下一幀星時函數(shù)根據(jù)遙測輸出設(shè)備屬性指針, 在遙測輸出設(shè)備中的星時存儲區(qū)中獲取下一幀星時,并將星時存儲于應(yīng)用軟件中的星時存儲地址中,無返回值;e)當(dāng)?shù)孛孀⑷氪a速率切換指令后,應(yīng)用軟件調(diào)用設(shè)置碼速率函數(shù),調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、碼速率標(biāo)識;設(shè)置碼速率函數(shù)記錄碼速率標(biāo)識,并設(shè)置切換碼速率標(biāo)識為有效,無返回值;所述的碼速率標(biāo)識記錄了新碼速率;f)當(dāng)?shù)孛孀⑷刖幋a方式切換指令后,應(yīng)用軟件調(diào)用設(shè)置編碼方式函數(shù),調(diào)用參數(shù)為遙測輸出設(shè)備屬性指針、編碼方式標(biāo)識,置編碼方式函數(shù)記錄編碼方式標(biāo)識,并設(shè)置切換編碼方式標(biāo)識為有效,無返回值;所述的編碼方式標(biāo)識記錄了新編碼方式;g)其中遙測輸出設(shè)備每輸出8字節(jié)數(shù)據(jù)提出一個中斷,進入遙測輸出中斷服務(wù)程序, 遙測輸出中斷服務(wù)程序中將下一次的8字節(jié)寫入遙測輸出設(shè)備的緩存區(qū)中等待輸出,遙測輸出中斷服務(wù)程序輸出完一幀數(shù)據(jù)后判斷切換碼速率標(biāo)識是否有效,如果切換碼速率標(biāo)識有效則根據(jù)碼速率標(biāo)識啟用新碼速率,如果切換碼速率標(biāo)識無效則不作處理;同時判斷切換編碼方式標(biāo)識是否有效,如果切換編碼方式標(biāo)識有效則根據(jù)編碼方式標(biāo)識啟用新編碼方式,如果切換編碼方式標(biāo)識無效則不作處理;、遙控接收過程如下1)應(yīng)用軟件調(diào)用設(shè)備初始化函數(shù),無調(diào)用參數(shù),遙控接收設(shè)備初始化函數(shù)對遙控接收設(shè)備的屬性進行初始化,并返回設(shè)備屬性指針;2)應(yīng)用軟件調(diào)用遙控數(shù)據(jù)接收函數(shù)來獲取遙控數(shù)據(jù),調(diào)用參數(shù)為遙控接收設(shè)備屬性指針和應(yīng)用軟件中遙控數(shù)據(jù)存儲地址,遙控數(shù)據(jù)接收函數(shù)檢測遙控通道接收結(jié)束標(biāo)識,如果判斷到遙控通道結(jié)束標(biāo)識為有效則將該通道的遙控數(shù)據(jù)輸出給應(yīng)用軟件,存儲到應(yīng)用軟件中遙控數(shù)據(jù)存儲地址中,并給應(yīng)用軟件返回遙控數(shù)據(jù)接收成功標(biāo)識,如果檢測到遙控通道結(jié)束標(biāo)識為無效,則只給應(yīng)用軟件返回遙控數(shù)據(jù)接收失敗標(biāo)識;所述的遙控通道接收結(jié)束標(biāo)識由遙控中斷服務(wù)程序設(shè)置,遙控中斷服務(wù)程序每次接收 8字節(jié),將遙控數(shù)據(jù)存儲到遙控通道緩存區(qū),記錄接收到的字節(jié)數(shù),判斷通道接收是否結(jié)束, 如果結(jié)束則設(shè)置遙控通道接收結(jié)束標(biāo)識為有效;指令輸出過程如下1)應(yīng)用軟件調(diào)用設(shè)備初始化函數(shù),無調(diào)用參數(shù),指令輸出設(shè)備初始化函數(shù)在指令輸出設(shè)備中創(chuàng)建80ms定時器,完成指令輸出設(shè)備屬性的初始化,并返回設(shè)備屬性指針;2)應(yīng)用調(diào)用指令碼發(fā)送函數(shù),調(diào)用參數(shù)為指令輸出設(shè)備屬性指針和指令碼,指令碼發(fā)送函數(shù)根據(jù)指令輸出設(shè)備屬性指針,將指令碼寫入指令輸出設(shè)備端口地址,然后啟動80ms 定時器,開始指令脈沖輸出,80ms定時器到時后給相應(yīng)的硬件端口地址寫入?yún)?shù)停止指令脈沖,完成指令輸出。
全文摘要
本發(fā)明提供了一種星載軟件的硬件屏蔽層以及星上數(shù)據(jù)通信方法,屬于航天器數(shù)據(jù)通信領(lǐng)域。本發(fā)明針對硬件設(shè)備的功能設(shè)計了相應(yīng)功能的接口集合,形成星載軟件的硬件屏蔽層,接口結(jié)合包括標(biāo)準(zhǔn)的輸入輸出接口函數(shù),接口函數(shù)的調(diào)用參數(shù)包括設(shè)備屬性參數(shù)和數(shù)據(jù)通信接口參數(shù),接口函數(shù)能夠?qū)崿F(xiàn)一定的功能并具有返回值。使用本發(fā)明所提供的星上數(shù)據(jù)通信方法,應(yīng)用軟件僅在需要時提供設(shè)備屬性參數(shù)和通信接口參數(shù),調(diào)用接口函數(shù)即可完成與硬件設(shè)備之間的通信。本發(fā)明主要用于航天器硬件設(shè)備和上層軟件之間通信。
文檔編號G06F9/44GK102999331SQ20121045223
公開日2013年3月27日 申請日期2012年11月13日 優(yōu)先權(quán)日2012年11月13日
發(fā)明者張紅軍, 穆強, 裴楠, 袁珺, 張高, 程慧霞, 禹霽陽, 張亞航, 郭堅 申請人:北京空間飛行器總體設(shè)計部
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1