基于8051單片機的星載軟件全數(shù)字仿真測試裝置及系統(tǒng)的制作方法
【專利摘要】本發(fā)明提供一種星載軟件全數(shù)字仿真測試裝置和系統(tǒng),其中,該裝置包括中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊。述中斷仿真模塊響應(yīng)來自8051單片機運行星載軟件而產(chǎn)生的中斷請求,基于該中斷請求產(chǎn)生中斷響應(yīng),發(fā)送中斷響應(yīng)至所述8051單片機。AD數(shù)據(jù)采集仿真模塊設(shè)定有星載軟件所需的遙測數(shù)據(jù),根據(jù)來自星載軟件的采集指令向星載軟件發(fā)送遙測數(shù)據(jù)。CAN總線通信仿真模塊設(shè)定有星載軟件所需的數(shù)據(jù),接收8051單片機運行星載軟件的數(shù)據(jù)發(fā)送指令向星載軟件發(fā)送數(shù)據(jù),還接收8051單片機運行星載軟件而產(chǎn)生的數(shù)據(jù)接收指令而接收星載軟件的數(shù)據(jù)。本發(fā)明對硬件設(shè)備的依賴性低。
【專利說明】基于8051單片機的星載軟件全數(shù)字仿真測試裝置及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及軟件測試技術(shù),尤其涉及基于8051單片機的軟件仿真測試裝置。
【背景技術(shù)】
[0002]一顆衛(wèi)星往往包含多個星載軟件,實現(xiàn)相對獨立的功能,軟件規(guī)模一般為小型或中型,多數(shù)是采用8051單片機C語言編寫。星載軟件運行在太空復(fù)雜多變的環(huán)境下,星載軟件需要具備高安全性、高可靠性,因此一般都要進行嚴格的綜合測試。
[0003]星載軟件測試的傳統(tǒng)的做法是采用全實物或半物理仿真系統(tǒng)進行軟件運行,開展動態(tài)測試工作。這兩種測試方法都基本依賴于硬件環(huán)境,存在很多問題,比如:硬件資源擴展性靈活性限制導(dǎo)致測試內(nèi)容不充分;硬件資源的昂貴性、易沖突性造成的時間、人力、財力的浪費。
【發(fā)明內(nèi)容】
[0004]本發(fā)明解決的問題是現(xiàn)有的星載軟件的仿真測試依賴硬件環(huán)境的問題。
[0005]為解決上述問題,本發(fā)明提供一種星載軟件全數(shù)字仿真測試裝置,用于仿真測試加載于8051單片機內(nèi)的星載軟件,該裝置包括中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊,其中,所述中斷仿真模塊響應(yīng)來自8051單片機運行星載軟件而產(chǎn)生的中斷請求,基于該中斷請求產(chǎn)生中斷響應(yīng),發(fā)送中斷響應(yīng)至所述8051單片機;所述AD數(shù)據(jù)采集仿真模塊設(shè)定有星載軟件所需的遙測數(shù)據(jù),根據(jù)來自星載軟件的采集指令向星載軟件發(fā)送所述遙測數(shù)據(jù);所述CAN總線通信仿真模塊設(shè)定有星載軟件所需的數(shù)據(jù),接收8051單片機運行星載軟件的數(shù)據(jù)發(fā)送指令向星載軟件發(fā)送數(shù)據(jù),還接收8051單片機運行星載軟件而產(chǎn)生的數(shù)據(jù)接收指令而接收星載軟件的數(shù)據(jù)。
[0006]可選地,所述CAN總線通信仿真模塊包括第一 CAN總線通信仿真模塊和第二 CAN總線通信仿真模塊,由所屬中斷仿真模塊控制而在第一 CAN總線通信仿真模塊和第二 CAN總線通信模塊之間切換。
[0007]可選地,所述中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊均是在Keil環(huán)境下編寫的腳本。
[0008]可選地,所述CAN總線通信仿真模塊根據(jù)該復(fù)位指令而重新復(fù)位初始化,該復(fù)位指令由單片機在長時間接收不到CAN總線通信仿真模塊的數(shù)據(jù)時產(chǎn)生。
[0009]本發(fā)明還提供一種星載軟件全數(shù)字仿真測試系統(tǒng),該系統(tǒng)包括8051單片機、中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊,其中,所述8051單片機內(nèi)加載星載軟件,運行該星載軟件向所述中斷仿真模塊發(fā)送中斷請求、向所述AD數(shù)據(jù)采集仿真模塊發(fā)送采集指令和向所述CAN總線通信仿真模塊發(fā)送數(shù)據(jù)發(fā)送指令和數(shù)據(jù)接收指令;所述中斷仿真模塊響應(yīng)來自星載軟件的中斷請求,基于該中斷請求產(chǎn)生中斷響應(yīng),發(fā)送中斷響應(yīng)至所述8051單片機;所述AD數(shù)據(jù)采集仿真模塊設(shè)定有星載軟件所需的遙測數(shù)據(jù),根據(jù)來自星載軟件的采集指令向所述8051單片機發(fā)送所述遙測數(shù)據(jù);所述CAN總線通信仿真模塊設(shè)定有星載軟件所需的數(shù)據(jù),根據(jù)8051單片機運行星載軟件而產(chǎn)生的數(shù)據(jù)發(fā)送指令向星載軟件發(fā)送數(shù)據(jù),還根據(jù)8051單片機運行星載軟件而產(chǎn)生的數(shù)據(jù)接收指令而接收星載軟件的數(shù)據(jù)。
[0010]可選地,所述CAN總線通信仿真模塊包括第一 CAN總線通信仿真模塊和第二 CAN總線通信仿真模塊,由所屬中斷仿真模塊控制而在第一 CAN總線通信仿真模塊和第二 CAN總線通信模塊之間切換。
[0011]可選地,所述中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊均是在Keil環(huán)境下編寫的腳本,在Keil中與星載軟件一起編譯運行。
[0012]可選地,所述8051單片機在長時間接收不到CAN總線通信仿真模塊的數(shù)據(jù)時產(chǎn)生復(fù)位指令,CAN總線通信仿真模塊根據(jù)該復(fù)位指令而重新復(fù)位初始化。
[0013]與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點:
由于本發(fā)明的星載軟件全數(shù)字仿真測試裝置包括中斷仿真模塊、AD數(shù)據(jù)采集模塊和CAN總線通信仿真模塊,所以,在仿真測試星載軟件時,除了工作PC機外不需要任何其他單機等硬件資源,從而,對硬件設(shè)備的依賴性低,可以避免硬件資源擴展性靈活性限制導(dǎo)致測試內(nèi)容不充分、硬件資源的昂貴性和易沖突性造成的時間、人力、財力的浪費等問題,簡化了測試的復(fù)雜度。
【專利附圖】
【附圖說明】
[0014]圖1是本發(fā)明基于8051系列單片機的星載軟件全數(shù)字仿真測試裝置的結(jié)構(gòu)示意圖。
【具體實施方式】
[0015]為詳細說明本發(fā)明的技術(shù)內(nèi)容、構(gòu)造特征、所達成目的及功效,下面將結(jié)合實施例并配合附圖予以詳細說明。
[0016]請參閱圖1,本發(fā)明的星載軟件全數(shù)字仿真測試裝置包括AD數(shù)據(jù)采集仿真模塊1、中斷仿真模塊2和CAN總線通信仿真模塊3。所述AD數(shù)據(jù)采集仿真模塊I設(shè)定有星載軟件所需的遙測數(shù)據(jù),根據(jù)來自星載軟件的采集指令向星載軟件發(fā)送所述遙測數(shù)據(jù),通過在Keil環(huán)境下編寫腳本實現(xiàn),具體過程如下:根據(jù)星載軟件協(xié)議規(guī)定的內(nèi)容進行數(shù)據(jù)的設(shè)定,并將設(shè)定的遙測數(shù)據(jù)送到相應(yīng)的AD接口供8051單片機的星載軟件采集,在腳本中把設(shè)定完畢的數(shù)據(jù)存放到RAM區(qū)內(nèi),設(shè)定一個合適的時間間隔依次把數(shù)據(jù)讀出到AD接口實現(xiàn)AD數(shù)據(jù)的采集。所述中斷仿真模塊2響應(yīng)來自8051單片機運行星載軟件而產(chǎn)生的中斷請求,基于該中斷請求產(chǎn)生中斷響應(yīng),發(fā)送中斷響應(yīng)至所述8051單片機,通過在Keil環(huán)境下編寫腳本實現(xiàn),中斷仿真模塊2的中斷響應(yīng)產(chǎn)生具體是:通過設(shè)置內(nèi)部寄存器高低字節(jié)值分別為OxFF、設(shè)置8051單片機的外部引腳P3.2或P3.3的高低電平來觸發(fā)內(nèi)部、外部中斷。在需要的時候只要運行該腳本則軟件中會立刻產(chǎn)生相應(yīng)的內(nèi)部中斷和外部中斷。所述CAN總線通信仿真模塊3設(shè)定有星載軟件所需的數(shù)據(jù),接收8051單片機運行星載軟件的數(shù)據(jù)發(fā)送指令向星載軟件發(fā)送數(shù)據(jù),還接收8051單片機運行星載軟件而產(chǎn)生的數(shù)據(jù)接收指令而接收星載軟件的數(shù)據(jù),通過在Keil環(huán)境下編寫腳本實現(xiàn),以通過CAN總線通信仿真模塊3仿真數(shù)管計算機與8051單片機內(nèi)加載的星載軟件為例說明CAN總線通信仿真模塊3的工作過程如下:數(shù)管計算機需要與星載軟件通信的數(shù)據(jù)設(shè)定在CAN總線通信仿真模塊3內(nèi),通信時,腳本中按通信協(xié)議組幀,為發(fā)送給8051單片機內(nèi)加載的星載軟件做準(zhǔn)備,組幀的數(shù)據(jù)放置到CAN總線通信仿真模塊3的接收發(fā)送緩沖區(qū),然后8051單片機收到中斷后將把接收發(fā)送緩沖區(qū)內(nèi)的數(shù)據(jù)讀出來進行處理;8051單片機采集需要回傳給CAN總線通信仿真模塊3的數(shù)據(jù),首先組幀并緩存到接收發(fā)送緩沖區(qū)內(nèi),設(shè)置CAN命令寄存器置發(fā)送請求,該數(shù)據(jù)幀將被發(fā)送回CAN總線通信仿真模塊3。在其他的實施例中,所述CAN總線通信仿真模塊3包括第一 CAN總線通信仿真模塊和第二 CAN總線通信仿真模塊,第一 CAN總線通信仿真模塊和第二 CAN總線通信仿真模塊由所述中斷仿真模塊2控制而選擇第一 CAN總線通信仿真模塊或者第二 CAN總線通信模塊與8051單片機通信,從而,能夠第一 CAN總線通信仿真模塊和第二 CAN總線通信模塊之間切換,具體的,中斷仿真模塊2產(chǎn)生中斷具體是在腳本中把CAN總線的首地址重新設(shè)定,在該首地址是第一 CAN總線通信模塊的首地址時,8051單片機與第一 CAN總線通信模塊通信,在該首地址是第二 CAN總線通信仿真模塊的首地址時,8051單片機與該第二 CAN總線通信模塊通信,這樣,實現(xiàn)切換冗余設(shè)計的仿真測試。在本發(fā)明中,當(dāng)8051單片機長時間接收不到CAN總線通信仿真模塊3發(fā)回的數(shù)據(jù),也就是在超時的情況下,8051單片機會產(chǎn)生復(fù)位指令,CAN總線通信仿真模塊3根據(jù)該復(fù)位指令而重新復(fù)位初始化,從而,實現(xiàn)CAN總線的復(fù)位。
[0017]以上述全數(shù)字測試裝置為基礎(chǔ),本發(fā)明還提供一種星載軟件全數(shù)字測試系統(tǒng),該測試系統(tǒng)包括8051單片機、中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊。所述中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊均是在Keil環(huán)境下編寫的腳本,在Keil中與星載軟件一起編譯運行。中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊的工作過程如前所述,在此不再贅述。
[0018]綜上所述,由于本發(fā)明的星載軟件全數(shù)字仿真測試裝置包括中斷仿真模塊、AD數(shù)據(jù)采集模塊和CAN總線通信仿真模塊,所以,在仿真測試星載軟件時,除了工作PC機外不需要任何其他單機等硬件資源,從而,對硬件設(shè)備的依賴性低,可以避免硬件資源擴展性靈活性限制導(dǎo)致測試內(nèi)容不充分、硬件資源的昂貴性和易沖突性造成的時間、人力、財力的浪費等問題,簡化了測試的復(fù)雜度。
【權(quán)利要求】
1.基于8051單片機的星載軟件全數(shù)字仿真測試裝置,用于仿真測試加載于8051單片機內(nèi)的星載軟件,其特征在于:該裝置包括中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊,其中, 所述中斷仿真模塊響應(yīng)來自8051單片機運行星載軟件而產(chǎn)生的中斷請求,基于該中斷請求產(chǎn)生中斷響應(yīng),發(fā)送中斷響應(yīng)至所述8051單片機; 所述AD數(shù)據(jù)采集仿真模塊設(shè)定有星載軟件所需的遙測數(shù)據(jù),根據(jù)來自星載軟件的采集指令向星載軟件發(fā)送所述遙測數(shù)據(jù); 所述CAN總線通信仿真模塊設(shè)定有星載軟件所需的數(shù)據(jù),接收8051單片機運行星載軟件的數(shù)據(jù)發(fā)送指令向星載軟件發(fā)送數(shù)據(jù),還接收8051單片機運行星載軟件而產(chǎn)生的數(shù)據(jù)接收指令而接收星載軟件的數(shù)據(jù)。
2.如權(quán)利要求1所述星載軟件全數(shù)字仿真測試裝置,其特征在于:所述CAN總線通信仿真模塊包括第一 CAN總線通信仿真模塊和第二 CAN總線通信仿真模塊,由所屬中斷仿真模塊控制而在第一 CAN總線通信仿真模塊和第二 CAN總線通信模塊之間切換。
3.如權(quán)利要求1所述星載軟件全數(shù)字仿真測試裝置,其特征在于:所述中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊均是在Keil環(huán)境下編寫的腳本。
4.如權(quán)利要求1所述星載軟件全數(shù)字仿真測試裝置,其特征在于:所述CAN總線通信仿真模塊根據(jù)該復(fù)位指令而重新復(fù)位初始化,該復(fù)位指令由單片機在長時間接收不到CAN總線通信仿真模塊的數(shù)據(jù)時產(chǎn)生。
5.星載軟件全數(shù)字仿真測試系統(tǒng),其特征在于:該系統(tǒng)包括8051單片機、中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊,其中, 所述8051單片機內(nèi)加載星載軟件,運行該星載軟件向所述中斷仿真模塊發(fā)送中斷請求、向所述AD數(shù)據(jù)采集仿真模塊發(fā)送采集指令和向所述CAN總線通信仿真模塊發(fā)送數(shù)據(jù)發(fā)送指令和數(shù)據(jù)接收指令; 所述中斷仿真模塊響應(yīng)來自星載軟件的中斷請求,基于該中斷請求產(chǎn)生中斷響應(yīng),發(fā)送中斷響應(yīng)至所述8051單片機; 所述AD數(shù)據(jù)采集仿真模塊設(shè)定有星載軟件所需的遙測數(shù)據(jù),根據(jù)來自星載軟件的采集指令向所述8051單片機發(fā)送所述遙測數(shù)據(jù); 所述CAN總線通信仿真模塊設(shè)定有星載軟件所需的數(shù)據(jù),根據(jù)8051單片機運行星載軟件而產(chǎn)生的數(shù)據(jù)發(fā)送指令向星載軟件發(fā)送數(shù)據(jù),還根據(jù)8051單片機運行星載軟件而產(chǎn)生的數(shù)據(jù)接收指令而接收星載軟件的數(shù)據(jù)。
6.如權(quán)利要求5所述星載軟件全數(shù)字仿真測試系統(tǒng),其特征在于:所述CAN總線通信仿真模塊包括第一 CAN總線通信仿真模塊和第二 CAN總線通信仿真模塊,由所屬中斷仿真模塊控制而在第一 CAN總線通信仿真模塊和第二 CAN總線通信仿真模塊之間切換。
7.如權(quán)利要求5所述星載軟件全數(shù)字仿真測試系統(tǒng),其特征在于:所述中斷仿真模塊、AD數(shù)據(jù)采集仿真模塊和CAN總線通信仿真模塊均是在Keil環(huán)境下編寫的腳本,在Keil中與星載軟件一起編譯運行。
8.如權(quán)利要求5所述星載軟件全數(shù)字仿真測試系統(tǒng),其特征在于:所述8051單片機在長時間接收不到CAN總線通信仿真模塊的數(shù)據(jù)時產(chǎn)生復(fù)位指令,CAN總線通信仿真模塊根據(jù)該復(fù)位指令而重新復(fù)位初始化。
【文檔編號】G06F11/36GK103678108SQ201210358410
【公開日】2014年3月26日 申請日期:2012年9月25日 優(yōu)先權(quán)日:2012年9月25日
【發(fā)明者】張偉欣, 宋力立, 印玲, 呂麗, 夏睿嫻, 王永孟 申請人:上海航天測控通信研究所