找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 3262|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

基于DSP的漢字及圖形疊加實(shí)現(xiàn)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:114320 發(fā)表于 2016-5-10 01:36 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
分享一篇很多年前的筆記,可以給同學(xué)們演示一下如何把數(shù)字和模擬結(jié)合到一起,形成一些創(chuàng)新。只有真正的把原理和基礎(chǔ)消化吸收,通過(guò)應(yīng)用實(shí)踐,才能轉(zhuǎn)化為自己可以掌握的創(chuàng)造力。

基于DSP的漢字及圖形疊加實(shí)現(xiàn)

項(xiàng)目簡(jiǎn)介:
傳統(tǒng)的字符疊加都是使用專用的OSD芯片,一般價(jià)格較高,而且通常只能實(shí)現(xiàn)英文字母和數(shù)字的疊加,使用不靈活,還要占用較多的PCB板空間,故障率也較高。
這里介紹的字符疊加方案是基于TI的2000系列DSP的,經(jīng)過(guò)調(diào)試驗(yàn)證效果良好。
TMS320F2812是TI新近推出的高性能定點(diǎn)DSP,內(nèi)部集成的EV模塊使它很適用于高性能的電機(jī)控制應(yīng)用場(chǎng)合。如要求高精度、高速的云臺(tái)和機(jī)床等。以云臺(tái)為例,通常需要隨著電機(jī)的運(yùn)轉(zhuǎn)顯示角度、坐標(biāo)、距離等信息,以及一些簡(jiǎn)單的控制菜單,甚至可能要疊加簡(jiǎn)單的地圖。用通常的OSD芯片根本無(wú)法完成如此復(fù)雜的涉及任意圖形的疊加。而該疊加方案巧妙利用了2812的內(nèi)部資源――SPI串口模塊,實(shí)現(xiàn)了這些內(nèi)容的疊加。
疊加原理:
圖形疊加是把視頻信號(hào)的每一行虛擬分成H個(gè)點(diǎn),垂直分為V行,疊加圖像就是H×V分辨率的單色位圖。利用視頻信號(hào)提取出的復(fù)合同步信號(hào)及場(chǎng)同步信號(hào),確定疊加圖像的有效點(diǎn)(即需要覆蓋掉原視頻圖像的點(diǎn)),在這些點(diǎn)把視頻信號(hào)切換到一個(gè)固定電平(可以由DSP控制)即可實(shí)現(xiàn)視頻疊加。
方案實(shí)現(xiàn):
該功能模塊主要由四部分組成:復(fù)合視頻信號(hào)交流耦合及直流恢復(fù)、視頻同步信自成提取、視頻疊加灰度控制、視頻切換疊加。下面對(duì)各部分及軟件實(shí)現(xiàn)做簡(jiǎn)要的描述。
1) 復(fù)合視頻信號(hào)交流耦合及直流恢復(fù)
視頻信號(hào)交流耦合可以對(duì)前后級(jí)形成有效的隔離以起到很好的保護(hù)作用。但交流耦合后的復(fù)合視頻信號(hào)會(huì)丟掉原信號(hào)的直流分量,導(dǎo)致丟失一部分背景亮度信息。而交流耦合帶來(lái)的最嚴(yán)重的問(wèn)題是:信號(hào)直流成分的丟失會(huì)導(dǎo)致同步頭的上下漂移,使信號(hào)同步信息丟失。

1交流耦合視頻信號(hào)示意圖

從圖1可以看到交流耦合后的信號(hào)是趨于平均電平對(duì)齊的,對(duì)不同亮度背景的信號(hào),同步頭電平差異很大,無(wú)法通過(guò)與一個(gè)固定的參考電平進(jìn)行比較來(lái)提取同步信息。
于是需要對(duì)信號(hào)進(jìn)行直流恢復(fù),這里采用三極管鉗位電路(圖2)。三極管鉗位電路具有成本低、控制靈活、響應(yīng)速度快等優(yōu)點(diǎn)。這里鉗位電路起到的作用就是將視頻信號(hào)的低電平自動(dòng)(即同步信號(hào))對(duì)齊。為使峰值1V的視頻信號(hào)比較適合后續(xù)3.3V供電系統(tǒng)作處理,將視頻信號(hào)的低電平設(shè)置為1.1V(高電平為2.1V,相對(duì)3.3V電源,上下均有1.1V左右的電平裕量),于是R29與R30分壓為1.1V+0.7V=1.8V。由此確定R29與R30值分別為4.7K和3.6K。



2直流恢復(fù)-鉗位電路




恢復(fù)后的視頻圖像如圖所3示:


圖3直流恢復(fù)后的視頻信號(hào)示意圖


這樣便完成了視頻信號(hào)的直流恢復(fù)?梢院苋菀椎挠煤(jiǎn)單比較器電路提取同步信息。另外,采用鉗位電路的另一個(gè)好處是,75歐負(fù)載是在耦合電容前面,耦合電容后面的本地視頻信號(hào)所在的網(wǎng)絡(luò)阻抗很大(約30K),只需要1uF的磁片電容就可以實(shí)現(xiàn)視頻信號(hào)的良好耦合――有效帶寬與75歐電阻配400uF電解電容相當(dāng)。這就大大縮小了耦合電容的體積,并提高了電容壽命。
2) 視頻同步信號(hào)提取
復(fù)合同步主要用于行同步,比較容易提取,只需要一個(gè)簡(jiǎn)單的積分濾掉高頻雜波,然后經(jīng)過(guò)一個(gè)比較電路就能得到。傳統(tǒng)的場(chǎng)視頻信號(hào)提取是利用濾波和微分電路實(shí)現(xiàn)的,那種方式不容易實(shí)現(xiàn)場(chǎng)同步信號(hào)與復(fù)合同步信號(hào)的嚴(yán)格對(duì)齊,會(huì)造成疊加內(nèi)容的上下抖動(dòng)。這里使用了一種其它的方法――利用前面得到的復(fù)合同步脈沖里的槽脈沖經(jīng)過(guò)一點(diǎn)簡(jiǎn)單的處理即可得到場(chǎng)同步信號(hào)。因?yàn)椴勖}沖的寬度為29.65us,而行同步頭寬度只有4.7us。所以用一個(gè)積分電路和一個(gè)比較電路就能由復(fù)合同步信號(hào)提取出場(chǎng)同步信號(hào)――圖4的R35和C48就是該積分電路,時(shí)間常數(shù)取介于4.7us與29.65us之間的15us(時(shí)間裕量較大),于是取值分別為15K與1nF。另外,通過(guò)計(jì)算還找到一個(gè)合適的值,使場(chǎng)同步信號(hào)提取與復(fù)合同步信號(hào)提取使用同一個(gè)參考電平以減少元器件。提取的同步脈沖直接送到2812的中斷輸入引腳。圖4為同步信號(hào)提取電路圖:

4同步脈沖提取電路

比較器不需要速度很快,只需延遲時(shí)間一致就可以,于是采用低成本的雙路比較器LM2903。
3) 視頻疊加灰度控制

5疊加灰度控制電路

視頻疊加是通過(guò)快速在視頻圖像與灰度電平之間切換實(shí)現(xiàn)的。圖像背景不同,往往需要改變疊加內(nèi)容的灰度才能達(dá)到理想的視覺(jué)效果。于是利用2812剩余的一路PWM信號(hào)積分后代替DA來(lái)產(chǎn)生灰度電平(兩個(gè)電機(jī)控制使用4個(gè)PWM腳,還剩余2個(gè))。初步積分地需選用前面的數(shù)字地,以保障流暢的PWM信號(hào)回路(數(shù)字部分)。對(duì)1MHz的PWM信號(hào),可以取R26、C45的值為1K與0.1uF,使輸出紋波低于5mV。然后再經(jīng)過(guò)一級(jí)針對(duì)模擬地的RC濾波,使輸出灰度電平紋波達(dá)到uV級(jí)。
4) 視頻切換疊加
疊加通過(guò)一個(gè)視頻切換芯片來(lái)實(shí)現(xiàn),為減少原視頻信號(hào)失真,選用TI的帶寬達(dá)300MHz的視頻切換芯片TS3V330,并且使用兩路并連以提高導(dǎo)通電阻的一致性。該芯片通道切換時(shí)間低于10ns,可以很好的滿足應(yīng)用需求。具體電路如下圖6所示:

6切換疊加電路
疊加功能中視頻信號(hào)與固定電平的切換是通過(guò)DSP自帶的SPI口完成的。2812的SPI最大傳輸比特率為37.5Mb/s,并且SPI模塊自帶16級(jí)16位的FIFO。這里顯示水平分辨率H剛好可以取256,可以滿足一般顯示應(yīng)用需求,而且剛好能利用SPI模塊的FIFO實(shí)現(xiàn)每行僅進(jìn)行一次SPI寫操作,極大的減少了CPU占用時(shí)間。DSP每次檢測(cè)到復(fù)合同步脈沖觸發(fā)的硬件中斷,進(jìn)行一次對(duì)SPI FIFO寫的操作,檢測(cè)到場(chǎng)同步中斷即進(jìn)行行數(shù)清0的操作。按照每64us進(jìn)入中斷進(jìn)行一次16字(16bit*16)的搬移計(jì)算,CPU占用量不及1%。
垂直分辨率V取256,奇偶場(chǎng)不需區(qū)分――也就是相鄰幀的同一行疊加內(nèi)容相同,這樣在滿足應(yīng)用需求的前提下可以減少奇偶場(chǎng)判斷所需的軟件資源。對(duì)PAL制和NTSC制信號(hào),可以取V的一部分,即有效疊加內(nèi)容少于256行。
我們采用的DSP(TMS320F2812)內(nèi)帶128k×16bit的FLASH和18k×16bit的RAM。利用64k的FLASH裝載一級(jí)漢字庫(kù)及ASC字形庫(kù)和一個(gè)4k的自定義LOGO或其它圖形。其余64k裝載程序。為減少字符疊加及疊加內(nèi)容維護(hù)占用DSP的計(jì)算量,給字符疊加專門分配一塊4k×16bit的RAM作為OSD緩存。只有疊加內(nèi)容需要更改的時(shí)候才對(duì)RAM內(nèi)容進(jìn)行寫操作。
5) 軟件部分
該方案所需的軟件涉及的內(nèi)容較少也比較簡(jiǎn)單。主要是兩個(gè)中斷函數(shù),里面執(zhí)行一些簡(jiǎn)單的行數(shù)處理和對(duì)SPI FIFO的寫操作。另外還涉及一些字符處理的子函數(shù),如在某個(gè)位置疊加/清除一個(gè)字符以及滿屏圖像疊加和清屏等。這些子函數(shù)是對(duì)RAM內(nèi)圖形緩沖進(jìn)行寫操作,對(duì)實(shí)時(shí)性要求很低,管理起來(lái)也很方便。
項(xiàng)目結(jié)述:
目前該方案的軟硬件都已經(jīng)實(shí)現(xiàn),占用DSP資源少,效果良好,字符穩(wěn)定。不會(huì)影響電機(jī)控制,DSP還有非常大的計(jì)算裕量。單字符及圖形疊加模塊增加的成本只有不足5RMB,極大限度的利用了2812的剩余資源。該方案也可修改后用低成本的單片機(jī)實(shí)現(xiàn)。

7最終疊加效果圖




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表