《電子技術(shù)應用》
您所在的位置:首頁 > 嵌入式技術(shù) > 業(yè)界動態(tài) > 一種基于單片機控制的數(shù)字視頻混合器

一種基于單片機控制的數(shù)字視頻混合器

2008-08-29
作者:劉佳航 歐陽白

  摘? 要: 介紹一種基于AT89S8252單片機的數(shù)字視頻混合器的硬件構(gòu)成和軟件設計。實際應用表明,該數(shù)字視頻混合器操作方式簡單靈活、可靠性高,有較好的市場價值,。

  關鍵詞: AT89S8252單片機? 視頻混合器

?

  近幾年,數(shù)字電視技術(shù)發(fā)展很快,數(shù)字視頻混合器可以將兩路或多路數(shù)字視頻信號按照一定的算法混合成一路或多路數(shù)字視頻信號,。作為數(shù)字視頻信號的基本處理單元,該混合器在數(shù)字電視節(jié)目的編輯制作和播控傳輸系統(tǒng)中具有舉足輕重的作用。

本文介紹的基于單片機控制" title="單片機控制">單片機控制的數(shù)字視頻鍵控混合器具有以下特點:內(nèi)含兩級串聯(lián)的鍵控混合器,可以在主信號中鍵入兩路附加數(shù)字信號" title="數(shù)字信號">數(shù)字信號,如時鐘臺標或各種字幕標識;可以遠程遙控,也可現(xiàn)場按鍵控制;可以隨時更新和保存系統(tǒng)配置,改變系統(tǒng)功能和技術(shù)參數(shù);該系統(tǒng)穩(wěn)定可靠,對掉電,、死機等異常現(xiàn)象有自復位能力。

  整個系統(tǒng)包括硬件和軟件兩部分,硬件包括數(shù)字混合部分和單片機控制部分,。

1 數(shù)字混合部分

  輸入的數(shù)字信號有背景信號、鍵控信號和填充信號,輸出三路數(shù)字信號和一路模擬信號,。數(shù)字混合部分的硬件框圖如圖1,。

串行數(shù)字視頻輸入處理器GS9020A[2]專門設計來接收SMPTE 259M的串行數(shù)字信號。它具有錯誤檢測和處理能力,保證了串行數(shù)據(jù)的完整性;可以直接與GS9035A或者GS9025A連接,提供8位并行口和I2C串行口與外部微處理器通信,。本系統(tǒng)通過I2C總線讀取,、配置GS9020A狀態(tài)。

?

?

  TMC2081[3]是數(shù)字視頻處理器,以GBR,、YCB,、CR或者彩色序列格式,按比例混合數(shù)字視頻。α通道控制下,按M=(α)V1+(1-α)V2(0≤α≤1)完成同時淡出及淡入功能,。TMC2081提供微處理器I/O" title="I/O">I/O口,。

  錯誤檢測和處理協(xié)處理器GS9021[4]根據(jù)SMPTE RP-165執(zhí)行錯誤檢測和處理,可與GS9002、GS9022或者GS9032串行數(shù)字編碼器接口,產(chǎn)生行同步,、場消隱和場序列信號,。提供8位并行口和I2C串行口與外部微處理器通信。本系統(tǒng)通過I2C讀取,、配置GS9021狀態(tài),。

  CMOS芯片SAA7121是數(shù)字視頻編碼器,將數(shù)字亮度和色差信號同時編碼成CVBS和S-視頻模擬信號,也支持NTSC-M、PAL B/G和子標準,。輸入信號可以是YCBCR(CCIR 656)或者MPEG解碼數(shù)據(jù);對Y,、C和CVBS有三個數(shù)模轉(zhuǎn)換器?;揪幋a函數(shù)由副載波生成,、彩色調(diào)制和同步信號內(nèi)插組成,。SAA7121提供I2C總線接口,可按主動方式或從動方式工作。本系統(tǒng)通過I2C接口配置SAA7121,。

2 單片機控制部分

  基于單片機的控制電路如圖2所示,。其完成如下功能:與PC串行通信,傳輸命令和數(shù)據(jù);通過8位并行接口讀寫TMC2801;通過I2C總線讀寫SAA7121、GS9020A和GS9021;保存,、更新系統(tǒng)配置數(shù)據(jù);鍵控功能,按鍵完成顯示或不顯示附加數(shù)字信號,。

?

2.1 AT89S8252單片機

??? AT89S8252[6]是ATMEL公司的8位CMOS單片機,與MCS-51系列兼容。主要特征:8K字節(jié)的FLASH程序存儲器(ROM),2K字節(jié)的片內(nèi)EEPROM,256字節(jié)的內(nèi)部數(shù)據(jù)存儲器(RAM),三個16位的定時/計數(shù)器,提供SPI串行接口和看門狗定時器,。

  選用AT89S8252的原因是:片內(nèi)EEPROM可以保存數(shù)據(jù)且掉電不丟失;看門狗具有掉電,、死機等異常現(xiàn)象自復位能力,可以提高混合器的穩(wěn)定性;與MCS-51系列兼容,。

2.2 通信接口

  通信接口提供RS-485標準,接口電路主要由MAX488(RS-485接收發(fā)送器)構(gòu)成,。RS-485標準不僅與RS-232兼容,而且適合遠距離傳輸數(shù)據(jù)。

3 軟件設計

  根據(jù)單片機控制功能的要求,軟件有主程序" title="主程序">主程序和串口中斷子程序兩部分,主程序流程圖如圖3所示,。編程側(cè)重點是:混合器初始化;鍵控功能;對PC命令的判斷和執(zhí)行;更新系統(tǒng)配置及對數(shù)據(jù)的保存,。

?

3.1 訪問EEPROM和看門狗設置

  AT89S8252有看門狗和EEPROM控制寄存器" title="控制寄存器">控制寄存器WMCON。

  WMCON? EQU? 96H???????     ;WMCON的地址

                  ;寫一字節(jié)

  SETB??? WMCON.3? ????????????? ;訪問EEPROM使能

  SETB??? WMCON.4? ????????????? ;寫EEPROM使能

  MOVX?? @DPTR,,A ? ??????????? ;寫一字節(jié),尋址范圍0000H~07FFH

  JNB???? WMCON.1,,$??????????? ;WMCON.1為1,準備下一次訪問

??? CLR ????WMCON.4

??? CLR???? WMCON.3? ????????? ??? ;MOVX指令可以訪問外部數(shù)據(jù)存儲器

  從EEPROM讀字節(jié)與寫過程相似。

  WMCON.0是看門狗使能位,WMCON.1是看門狗復位位(單片機復位后為1),WMCON.5~7可以設定看門狗的時鐘周期(16~2048ms),。如果在看門狗的時鐘周期內(nèi),沒有設置看門狗復位位或者沒有關閉看門狗,內(nèi)部復位信號會復位單片機,。

3.2 與PC串行通信

  PC與單片機通信的數(shù)據(jù)格式有三種:命令長度+命令號;命令長度+命令號+讀數(shù)據(jù)字節(jié)數(shù)N+首地址+校驗和;命令長度+命令號+寫數(shù)據(jù)字節(jié)數(shù)N +首地址+數(shù)據(jù)1+...+數(shù)據(jù)N+校驗和。命令長度,、命令號,、讀寫數(shù)據(jù)字節(jié)數(shù)N、首地址和數(shù)據(jù)n(1≤n≤N)都是一字節(jié),用16進制表示,。命令長度是整個命令格式的字節(jié)數(shù)。校驗和=命令號讀數(shù)據(jù)字節(jié)數(shù)N首地址,,或者校驗和=命令號寫數(shù)據(jù)字節(jié)數(shù)N首地址數(shù)據(jù)1...數(shù)據(jù)N,。例如:顯示附加數(shù)字信號1并且1號LED亮,PC發(fā)送0x02 0x01;讀1號TMC2081的00~03控制存儲器,PC發(fā)送0x5 0xB 0x4 0x0 0xF;寫0x0 0x21 0x1D 0x0 到SAA7121的27~2A存儲器,PC發(fā)送0x9 0xC 0x4 0x27 0x0 0x21 0x1D 0x0 0x13。

  在單片機的串口中斷子程序中,根據(jù)接收到的命令長度判斷是否接收到一個完整的命令格式,。如果接收到一個完整命令格式就設置標志位FLG1(如圖3),。根據(jù)這個標志位進入主程序中處理PC命令的程序,由接收到的命令號識別各種PC發(fā)送的命令。例如,1號命令是顯示附加數(shù)字信號1并且點亮1號LED,0xC號命令是寫SAA7121存儲器等,。依據(jù)接收到的校驗和,可以判斷接收PC數(shù)據(jù)的正確性,防止對混合器的錯誤操作,。

  用VB6.0設計軟件,讀寫PC的串行口。本文波特率為9600bps,單片機的定時器/計數(shù)器2(T2)設定在波特率發(fā)生器的工作方式,。

3.3 訪問TMC2081

  TMC2081提供微處理器I/O口,包括讀/寫控制R//W,、片選/CS,、寄存器選擇控制A[2:0]、數(shù)據(jù)I/O口D[7:0],。通過微處理器I/O口可以訪問TMC2081的內(nèi)部控制存儲器,完成對芯片的配置,。讀寫時序如圖4。

?

??? 參數(shù)tPWLCS,、tSA,、tSD、tHD,、tPWHCS,、tHA、tDOM的最短要求時間都是ns級,。用AT89S8252軟件編程可以模擬該端口的讀寫時序配置TMC2081,。

  本系統(tǒng)用到兩片TMC2081,標記為TMC2081_0和TMC2081_1。AT89S8252的P3.6 連TMC2081_0/1的R//W,P2.3連TMC2081_0的/CS,P2.4連TMC2081_1的/CS,P2[2:0]連TMC2081_0/1的A[2:0],P0[7:0]連TMC2081_0/1的D[7:0](如圖2),。讀寫TMC2081_0的A通道存儲器的程序如下:

  MC2081_0? ? EQU? P2.3

????TMC2081_1  EQU? P2.4

????R_NW???? ?? EQU? P3.6

????MOV?????????A,,#00H

????LCALL???????WADDRTMC2081_0? ?     ;選中A通道控制寄存器

??? MOV?????????A,#01H

??? LCALL???????WDATMC2081_0????????????? ;寫01到A通道控制寄存器

??? MOV?????????A,,#00H

??? LCALL???????WADDRTMC2081_0? ?     ;選中A通道控制寄存器

? ? LCALL???????RDATMC2081_0????????????? ;讀A通道控制寄存器的內(nèi)容

??? WADDRTMC2081_0:? ???? 寫控制寄存器地址

??? SETB??????? TMC2081_1

  SETB??????? TMC2081_0

  SETB??????? R_NW

  CLR?? ???? R_NW

  ORL???????? P2,,#00000111B

  CLR???????? TMC2081_0

  SETB??????? R_NW

  MOV???????? P0,A

  SETB??????? TMC2081_0

  RET

  WDATMC2081_0:? ?? 寫數(shù)據(jù)到控制寄存器

  SETB?????? TMC2081_1

  SETB?????? TMC2081_0

  SETB?????? R_NW

  CLR??????? R_NW

  ANL ????? P2,,#11111101B

  CLR?? ??? TMC2081_0

  SETB?????? R_NW

  MOV??????? P0,,A

  SETB?????? TMC2081_0

  RET

  RDATMC2081_0:? 讀控制寄存器數(shù)據(jù)

  SETB?????? TMC2081_1

  SETB?????? TMC2081_0

  SETB?????? R_NW

  ANL??????? P2,#11111101B

  CLR??????? TMC2081_0

  MOV??????? A,,P0

  SETB?????? TMC2081_0

  RET

3.4 鍵控功能

  有兩個按鍵1,、2。按下1號鍵,1號LED亮并且顯示附加數(shù)字信號1;再按1號鍵,1號LED滅并且附加數(shù)字信號1不顯示,恢復背景信號,。2號鍵也同樣,這樣可同時顯示兩個附加數(shù)字信號,。信號顯示或不顯示的過程必須在場消隱的第6個下降沿完成,才能保證顯示或不顯示的過程不影響背景信號。

  行同步連P3.3,場消隱連計數(shù)器1(T1),按鍵1,、2連P1.6,、P1.7,P1.4和P1.5向混合器發(fā)出控制電平(如圖2)。單片機主程序中以查詢方式檢測是否有按鍵按下,。如果有,進入按鍵處理程序,先等待行同步的一個下降沿,然后啟動計數(shù)器T1計數(shù)場消隱的下降沿,計數(shù)器T1溢出后P1.4或者P1.5取反,向混合器發(fā)出控制電平,。本系統(tǒng)沒有讓行同步觸發(fā)外部中斷1子程序,只是簡單地查詢下降沿,實際結(jié)果表明查詢方式更可靠、方便,。

3.5 I2C接口

  I2C總線是Philips公司提出的串行通信協(xié)議,。通過串行數(shù)據(jù)線(SDA)和串行時鐘線(SCL)傳輸數(shù)據(jù)。數(shù)據(jù)傳輸率最快為400kbps,。本系統(tǒng)用P1.0和P1.1代表SDA和SCL,軟件模擬I2C協(xié)議,。

  本系統(tǒng)充分利用了AT89S8252的內(nèi)部資源,不需要外圍設備,節(jié)省了空間,。軟件編程簡單、實用,。這種基于單片機控制的鍵控數(shù)字視頻混合器已由師慧公司產(chǎn)品生產(chǎn)成KCM-D2000 Digital Key Control Mixer,。實際應用表明該混合器工作穩(wěn)定、方便,已經(jīng)取得較好的市場價值,。

?

參考文獻

1 孫涵芳,徐愛卿.MCS-51/96系列單片機原理及應用.北京航空航天大學出版社,1996

2 GS9020A Serial Digital Video Input Processor. DATA SHEET,,2001

3 TMC2081 Digital Video Mixer. DATA SHEET,1998

4 GS9021 EDH Coprocessor. DATA SHEET,1997

5 SAA7120;SAA7121 Digital Video Encoder(ConDENC).DATA SHEET.1997 Jan 06

6 AT89S8252數(shù)據(jù)手冊.2000
本站內(nèi)容除特別聲明的原創(chuàng)文章之外,,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章,、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者,。如涉及作品內(nèi)容,、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,,以便迅速采取適當措施,,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。