基于MB90092的機載視頻標(biāo)識卡設(shè)計
關(guān)鍵詞: 視頻標(biāo)識卡;MB90092芯片;AT89C51
機載視頻記錄系統(tǒng)用于記錄飛行中人員、裝備的各種信息,在訓(xùn)練、實戰(zhàn)中發(fā)揮重要作用。為使飛行員及地面指揮人員能夠更直觀、確切地了解飛行各時刻的狀態(tài)信息及便于判讀,我們?yōu)槠浼友b了標(biāo)識卡系統(tǒng)。記錄時可根據(jù)需要疊加適當(dāng)標(biāo)識,如漢字、圖形、實時時鐘等信息。
在實際系統(tǒng)設(shè)計中,我們選擇了富士通(FUJITSU)公司生產(chǎn)的專用字符疊加芯片MB90092,采用AT89C51單片機對其控制;考慮到機載系統(tǒng)的特殊性,我們利用RS-232串行接口通過計算機進行標(biāo)識卡預(yù)先標(biāo)識的寫入、控制設(shè)置。整個系統(tǒng)適應(yīng)性較強,地勤人員可根據(jù)不同的任務(wù)很方便的進行預(yù)先修改,可以顯示中文及任意圖形。
圖1 MB90092的功能框圖
圖2 系統(tǒng)原理圖
圖3 主程序流程圖
圖4 命令幀和數(shù)據(jù)幀的結(jié)構(gòu)
MB90092芯片簡介
MB90092利用外部字庫,可以為一路視頻(PAL或NTSC)信號疊加文本和圖形標(biāo)識。它提供兩種屏幕疊加方法,即主屏和副屏,二者可單獨或相互重疊出現(xiàn)在監(jiān)視器上。由三個引腳(CS 、SCLK、SIN)來進行對外通信。圖1為MB90092的功能框圖。
本系統(tǒng)中,我們只利用MB90092的主屏顯示功能,MB90092主屏顯示支持的字符顯示點陣為24×32;每個字符可以有不同的顏色,顯示容量為12行,每行24個字符或漢字。字體大小控制方式有:標(biāo)準(zhǔn)(24×32點陣)、雙倍寬、雙倍高、雙倍寬×雙倍高、四倍寬×四倍高。顯示位置控制:可任易設(shè)置水平方向和垂直方向的位置,同時可設(shè)定行距。有內(nèi)部視頻信號發(fā)生器支持NTSC或PAL制式,可選擇逐行或隔行掃描方式。
系統(tǒng)工作原理
本系統(tǒng)原理如圖2。整個電路的設(shè)計以MB90092芯片為核心。需要更改顯示標(biāo)識及顯示模式時,由計算機設(shè)置好后,通過RS-232接口傳給AT89C51;單片機通過系統(tǒng)總線把字符及控制信息寫入到FLASH存儲器MBM29F040C中。FLASH存儲器掉電后信息可以保持,故只在任務(wù)改變時重新設(shè)置內(nèi)容;字符寫入及單片機設(shè)置完成后,受外部信號觸發(fā),單片機發(fā)出命令,控制MB90092從存儲器的相應(yīng)地址讀出標(biāo)識,疊加到視頻信號上。
硬件實現(xiàn)
系統(tǒng)設(shè)計分為控制設(shè)置、字符存儲、字符疊加和實時時鐘接口四個相關(guān)聯(lián)的部分。
控制設(shè)置部分
包括計算機、AT89C51單片機,它們通過RS-232接口進行通信。主要完成兩項任務(wù):
?飛行前需要修改視頻標(biāo)志信息時,計算機通過RS-232接口可以把按給定格式組織的顯示命令和修改的字符信息傳輸給AT89C51,由單片機完成閃存的信息寫入。
?飛行時由單片機完成系統(tǒng)的控制,包括90092的配置,閃存中控制命令和字符信息的組織,實時時鐘信息的采樣,以及控制面板的響應(yīng)。
字符存儲部分
包括FLASH存儲器MBM29F040C,存儲容量512K×8bit。單片機和90092共用數(shù)據(jù)總線和地址總線,單片機在進行閃存讀寫操作時可能干擾90092內(nèi)部寄存器的初始配置,因此在AT89C51與MBM29F040C、MBM29F040C與MB90092總線間加入隔離器,對地址總線和數(shù)據(jù)總線進行隔離,其中包括MBM29F040C片選信號CE、讀信號RE、寫信號WE。單片機控制隔離器使能EN和數(shù)據(jù)流向DIR。
字符疊加部分
主要為字符疊加芯片MB90092。MB90092支持的字符點陣為24×32,地址線ADR12、ADR13 =00,01,10時分別對應(yīng)漢字的左、中、右三部分,ADR12ADR13 ="11"時不用;ADR0~ADR4對應(yīng)每一部分的32個字節(jié)。這些地址在MB90092工作時自動尋找,為此, MB90092的地址線ADR0~ADR4,ADR12~ADR13,ADR5~ ADR11,ADR14~ADR18分別與MBM29F040C的地址線A0~A18相連。單片機控制信號包括MB90092片選信號CS、串行數(shù)據(jù)傳輸時鐘SCLK、串行數(shù)據(jù)輸入SIN、狀態(tài)控制信號TSC。
實時時鐘接口設(shè)計
實時時鐘選用美國Xicor公司推出的串行時鐘芯片X1203,該芯片體積小、功耗低、使用簡單、接口容易,雙端口時鐘和報警寄存器使時鐘即使在讀寫操作期間也能精確工作。X1203采用I2C總線接口,在與AT89C51的接口中我們用P3.2 ,P3.3虛擬I2C總線接口,實現(xiàn)方法簡潔。
軟件實現(xiàn)
軟件設(shè)計主要包括兩部分:一是對寄存器設(shè)置以實現(xiàn)特定的功能;另一個是圖像顯示控制和字庫、寄存器設(shè)置命令的實時修改。
寄存器設(shè)置
MB90092通過對內(nèi)部寄存器的設(shè)置實現(xiàn)90092復(fù)位、字符顯示模式、字符尋址、字符疊加的設(shè)定。系統(tǒng)設(shè)計為可更改模式,故這部分程序放在外部閃存中,在程序運行中可由單片機進行引導(dǎo)和實時修改。
圖象顯示主流程
標(biāo)志卡一個很重要的功能就是控制命令和字符數(shù)據(jù)能實時修改,因此在程序開始就打開串行口,允許接收,程序循環(huán)運行過程中,串口有傳輸請求馬上響應(yīng),調(diào)用修改子程序。由于是機載設(shè)備,因此抗干擾必須考慮,在子程序中設(shè)定了傳輸請求標(biāo)志和校驗措施。
90092驅(qū)動的一個顯著特點是對命令傳輸次序沒有苛刻要求,任一條命令的傳輸都能及時映射到內(nèi)部的VRAM區(qū)域,并在視頻信號的場同步間隔期間完成刷新。因此在主程序流程中掃描功能管腳,調(diào)用閃存中的控制命令可以迅速完成標(biāo)志信息和顯示模式的更改。
由于90092刷新較快,因此在每一個程序循環(huán)中采樣X1023,送到單片機內(nèi)部設(shè)定的寄存器,調(diào)用0~9數(shù)字完成實時時鐘的顯示,誤差小于0.1秒。
該程序流程(見圖3)需要不停的循環(huán)對外部信號進行響應(yīng)和及時的顯示,同時完成90092的內(nèi)部刷新請求。
修改子程序說明
新的寄存器設(shè)置命令與字符信息由PC機編制,并按照設(shè)定好的協(xié)議格式通過RS-232接口傳輸給單片機,由單片機串行口接收、完成閃存的寫入,RS-232電平到TTL電平的轉(zhuǎn)換由MAX232L實現(xiàn)。寄存器設(shè)置命令和字符信息總的字節(jié)數(shù)不是很大,為保證單片機接收信息的準(zhǔn)確性,PC機和單片機之間都采用查詢方式進行。其傳輸方式設(shè)定如下:
波特率:1200波特/秒
串口模式:2:1位起始位,8位數(shù)據(jù)位,1位停止位
握手協(xié)議:(PC)傳輸請求標(biāo)志,5Ah
設(shè)定命令幀和數(shù)據(jù)幀(見圖4)結(jié)束標(biāo)志位,傳輸前標(biāo)志位都清零,當(dāng)標(biāo)志位都為結(jié)束標(biāo)志時,標(biāo)志命令幀、數(shù)據(jù)幀傳輸完畢,單片機完成寄存器的新設(shè)置和字符信息的修改。PC機的傳輸程序也采用查詢方式,每傳輸一個字節(jié)就等待單片機操作結(jié)束并回傳RRDY標(biāo)志,直到傳輸結(jié)束。
可靠性設(shè)計
軟硬件看門狗電路設(shè)計
為防止程序受干擾而跑飛,電路中設(shè)定了硬件看門狗電路,一旦進入非正常程序而不能回到正常狀態(tài),則強制硬件復(fù)位。在程序設(shè)計中也加入了抗干擾措施,主程序每個功能模塊設(shè)定入口標(biāo)志,程序在每個功能模塊入口處先執(zhí)行寫標(biāo)志操作,為防止程序失控后破壞相應(yīng)RAM單元,采用數(shù)據(jù)冗余和糾錯方法,程序復(fù)位后首先檢查恢復(fù)RAM數(shù)據(jù),然后根據(jù)入口標(biāo)志確定重新進入對應(yīng)的程序模塊。
命令錯誤處理
主要針對控制命令和字符數(shù)據(jù)的修改過程,PC有修改請求時首先必須通過單片機的權(quán)限檢測。在數(shù)據(jù)傳輸過程中,為保證傳輸有效性,設(shè)定單字節(jié)數(shù)據(jù)傳輸時間上限為3ms,從單片機回傳RRDY標(biāo)志開始,一旦時間超時則終止等待,重新回傳RRDY標(biāo)志。PC機在發(fā)送過程中連續(xù)收到兩次RRDY標(biāo)志,必須轉(zhuǎn)到傳輸錯誤子程序,對傳輸進行校驗。由于控制命令和字符數(shù)據(jù)總的字節(jié)數(shù)都為偶數(shù),因此傳輸結(jié)束時,單片機對所接收的字節(jié)總數(shù)進行校驗,如有錯誤,則作廢整個命令和數(shù)據(jù)信息。
結(jié)語
經(jīng)試用,該標(biāo)志卡工作可靠,疊加字符圖形清晰,時鐘顯示準(zhǔn)確,提高了視頻記錄系統(tǒng)判讀效率。同時MB90092有豐富的顯示模式可供選擇,具有很好的應(yīng)用前景和使用價值?!?/P>
參考文獻
1 胡漢才. 單片機原理及系統(tǒng)設(shè)計. 北京,清華大學(xué)出版社.2002
2 FUJITSU公司.MB90092 DataSheet.2001
3 FUJITSU公司.MBMF29C04 DataSheet. 2002
4 Xicor公司.X1203 DataSheet.2002
評論