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

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

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

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

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

?

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

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

  整個系統包括硬件和軟件兩部分,硬件包括數字混合部分和單片機控制部分。

1 數字混合部分

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

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

?

?

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

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

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

2 單片機控制部分

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

?

2.1 AT89S8252單片機

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

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

2.2 通信接口

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

3 軟件設計

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

?

3.1 訪問EEPROM和看門狗設置

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

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

                  ;寫一字節

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

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

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

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

??? CLR ????WMCON.4

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

  從EEPROM讀字節與寫過程相似。

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

3.2 與PC串行通信

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

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

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

3.3 訪問TMC2081

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

?

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

  本系統用到兩片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通道控制寄存器的內容

??? 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:? ?? 寫數據到控制寄存器

  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:? 讀控制寄存器數據

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

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

3.5 I2C接口

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

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

?

參考文獻

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數據手冊.2000
本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
主站蜘蛛池模板: 亚洲精品人成网线在线 | 亚洲一区二区免费视频 | 特级a毛片 | 成人网在线观看 | 免费看a级 | 色噜噜狠狠狠色综合久 | 老司机成人午夜精品福利视频 | 午夜性爽快免费视频播放 | 成人免费视频一区 | 中文字幕丝袜美腿 | 九九精品视频在线播放8 | 久久天天躁夜夜躁狠狠躁2020 | 乱人伦99久久 | 欧美一区二区三区精品 | 亚洲成人中文 | 二级特黄绝大片免费视频大片 | 人人爽人人爱 | 天天摸日日 | 久久综合精品视频 | 欧美日韩xxx| 黄色一级片录像 | 色青五月天 | 免费h福利漫画网站在线 | 天天舔天天操 | 精品一卡二卡三视频 | 天天色天天摸 | 天天躁日日躁狠狠躁黑人躁 | 欧洲日韩 | a级毛片高清免费视频 | 免费观看黄色的网站 | 中文字幕 亚洲一区 | 国产人成精品免费视频 | 亚洲国产成人影院播放 | 中文字幕亚洲综合久久2 | 伊人888| 人人澡人人澡人人看欧美 | 日本一区二区三区中文字幕视频 | www涩涩| 在线观看一区二区精品视频 | 国产成人精品午夜在线播放 | 五月亚洲综合 |