多功能內(nèi)置式IRIG-B碼終端設(shè)計(jì)
3.3 軟件模塊設(shè)計(jì)
軟件采用模塊化結(jié)構(gòu),由主程序如圖4所示、B碼中斷服務(wù)程序如圖5所示、定時(shí)器0中斷服務(wù)等程序如圖6所示組成。本文引用地址:http://2s4d.com/article/171005.htm
1)主程序
控制計(jì)算機(jī)加電后8751復(fù)位,主程序?qū)Υ锌诔跏蓟?,取?jì)數(shù)修正量并開(kāi)中斷。根據(jù)中斷程序設(shè)置的狀態(tài)位判斷本IRIG-B碼碼元是“0”或是“1”、還是B碼同步頭(標(biāo)志碼)。一幀IRIG-B碼結(jié)束后讀取瞬時(shí)時(shí)間并送雙端口RAM,然后進(jìn)行下一幀的檢測(cè)。
2)IRIG-B碼中斷服務(wù)程序
每個(gè)IRIG-B碼脈沖前沿均引起一次中斷,進(jìn)入中斷后由軟件判斷碼元脈沖寬度,當(dāng)連續(xù)檢測(cè)到2個(gè)8 ms寬碼元時(shí),即表示檢測(cè)到了IRIG-B碼標(biāo)志。在P1.0端口發(fā)出一個(gè)計(jì)數(shù)器修正量置入脈沖,之后進(jìn)入數(shù)碼判讀程序。檢測(cè)到5 ms寬碼元時(shí)記作“1”,檢測(cè)到2 ms寬碼元時(shí)記作“0”。
3)定時(shí)器0中斷服務(wù)程序
定時(shí)器0中斷是定時(shí)器0的溢出中斷,用于判斷B碼是否存在,此中斷只置中斷次數(shù)標(biāo)記。
4)事件標(biāo)記
事件標(biāo)記用于確定重要事件發(fā)生時(shí)的絕對(duì)時(shí)間。如彈動(dòng)時(shí)間,導(dǎo)彈起飛時(shí)間等。終端可將事件出現(xiàn)時(shí)間寫(xiě)入雙端口RAM,供控制計(jì)算機(jī)讀取。
4 結(jié)束語(yǔ)
靶場(chǎng)測(cè)控設(shè)備普遍采用GPS衛(wèi)星時(shí)間自主同步后,不用再在試驗(yàn)現(xiàn)場(chǎng)設(shè)置時(shí)統(tǒng)分站,免除在試驗(yàn)飛機(jī)、艦船、車(chē)輛等載體上加裝時(shí)統(tǒng)設(shè)備。有利于減少參試兵力,方便試驗(yàn)組織與指揮,提高試驗(yàn)綜合效益。
評(píng)論