基于MAX7456的字符疊加系統(tǒng)設計
1.3 系統(tǒng)軟件設計
該系統(tǒng)通過串口接收命令,然后由中斷處理程序顯示疊加字符的軟件流程如圖3所示。本文引用地址:http://2s4d.com/article/187799.htm
上電后,系統(tǒng)先對串口進行初始化,然后設置視頻的輸出模式和線程模式,接著單片機就等待串口傳來的命令,當有命令滿足中斷條件時,單片機進入中斷處理程序,將要顯示的字符在指定的位置上以指定的屬性疊加在視頻信號上。
單片機與MAX7456的通信主要是通過SPI接口來實現(xiàn)的,SPI的時序圖如圖4所示。當單片機向MAX7456寫數(shù)據(jù)時,首先拉低使能SPI口,在SCLK上升沿數(shù)據(jù)輸入SDIN。當變?yōu)楦唠娖綍r,數(shù)據(jù)被鎖存至輸入寄存器,如果在傳輸過程中變?yōu)楦唠娖?,則本次操作失敗。變?yōu)榈碗娖胶?,器件等待第一個輸入到SDIN中的字節(jié)。以確定所執(zhí)行數(shù)據(jù)傳輸?shù)念愋?。SPI命令為16位,高8位代表寄存器地址,低8位代表數(shù)據(jù)。
2 創(chuàng)建新字符
由于MAX7456器件內部只集成了256個字符,這些字符并不能滿足所有的需要,因此需要創(chuàng)建所需要的字符。用戶定義的字符集結合輸入視頻流產生CVBS和OSD視頻輸出。最多可存儲256個12×18像素字符,可以進行動態(tài)設置。在525線模式時,顯示13行x30字符;在625線模式時,顯示16行x30字符。MAX7456 OSD含有兩組存儲器:顯示存儲器(SRAM)和非易失字符存儲器(NVM)。
顯示存儲器(SRAM)存儲480個字符地址,這些地址“指向”存儲在NVM字符存儲器中的字符。顯示存儲器中的內容可由用戶編程,具有SPI兼容串行接口。顯示存儲器地址對應于監(jiān)視器的固定位置。每一字符都需要兩個字節(jié),第1個字節(jié)含有字符存儲器中的字符數(shù),第2個字節(jié)含有字符屬性狀態(tài)位,字符從左向右,自上而下排序。
非易失字符存儲器存儲要顯示的字符或圖形映射。字符存儲器中的內容可由用戶編程,采用SPI兼容串行接口。每一字符含有12行×18列像素。每一像素含有2個比特:00=黑色,不透明;0l=透明;10=白色,不透明;11=透明。因此,每個字符有12×18=216個像素,一個8位字節(jié)表示4個像素,所以每個字符需要216/4=54字節(jié)的數(shù)據(jù)。為方便尋址,存儲器組織結構采用64字節(jié)塊,每前54個字節(jié)表示一個字符,剩余10個字節(jié)沒有使用。所以,字符存儲器長度是64×256=16 384字節(jié)。因此,每個顯示存儲器地址位置包含的數(shù)值實際是對應于所選字符的64字節(jié)塊地址。
使用MAX7456提供的GUI軟件,能夠控制器件,下載定制圖形。字符存儲器數(shù)據(jù)在一個文件中,文件的文件擴展名是*.mcm字符存儲器。用記事本打開這個文件可以看到文件共有16 385行,第1行顯示的是MAX7456,第2行到最后一行顯示的都是8個二進制的數(shù)據(jù)。修改這些8位的二進制數(shù)就能夠得到需要的字符或圖形。
3 系統(tǒng)在導航中的應用
將攝像頭信號接入所設計的字符疊加系統(tǒng),視頻輸出接LCD顯示屏,在顯示屏上疊加導航所需要的信息:南京理工大學(NJUST)、日期(2009年12月8日)、緯度(Lat 32.518)、經度(Lon 118.137)、速度(V:15 m/s),航向(H:65.86),疊加效果如圖5所示。
從圖5可以看到,字符采用的是白底黑邊,無論光線強弱都可以很清楚地顯示所需要的信息,實際應用表明,本文設計的字符疊加系統(tǒng)操作方便,工作穩(wěn)定,可以在比較復雜的環(huán)境中使用。
4 結束語
本文設計的視頻疊加系統(tǒng)具有電路結構簡單,成本較低,使用方便的特點,能實現(xiàn)視頻圖像中任意字符的疊加,當需要大的字符或者圖案顯示的時候,可將一個大的字符分成多個小的字符,也就是用多個54字節(jié)顯示。實際使用證明該系統(tǒng)具有體積小、顯示清晰、工作穩(wěn)定、功耗低等特點,因此該系統(tǒng)可以應用于軍事、航空、社會生活等監(jiān)控系統(tǒng)中。
模數(shù)轉換器相關文章:模數(shù)轉換器工作原理
雙控開關相關文章:雙控開關原理
評論