??? 關(guān)鍵詞:VFD,DVD,前面板
1 引 言
前面板(也稱控制面板)是DVD整機(jī)的一個重要部件,用戶的所有操作命令(遙控命令、按鍵命令)都要通過它傳到解碼板進(jìn)行處理。此外DVD整機(jī)在播放過程中有許多信息要通過前面板上的真空熒光顯示器VFD(Vacumm Fluorescent Display)顯示出來,以方便用戶使用。uPD16311是一種VFD控制與驅(qū)動芯片,它具有集成度高、外圍電路簡單、功能強(qiáng)等優(yōu)點(diǎn),用它可組成DVD視盤機(jī)的前面板控制電路。本文將對uPD16311的性能特點(diǎn)、編程方法及其在DVD視盤機(jī)中的應(yīng)用作較詳細(xì)的論述。
2 uPD16311的性能特點(diǎn)與控制命令
2.1 uPD16311的性能特點(diǎn)
uPD16311是日本NEC公司生產(chǎn)的VFD控制與驅(qū)動集成電路。它具有12個段位輸出引腳S1-S12(15-26腳),8個柵極輸出引腳G1-G8(44-37腳),8個段位/柵極兩用輸出引腳(27-32、35和36腳)。其內(nèi)部包括:一個顯示存儲器、一個控制電路和一個按鍵掃描電路。顯示存儲器是用來存放顯示數(shù)據(jù)的,它由48個8bit的存儲單元組成,每個單元都有一個地址(00H-2FH)。uPD16311通過三根引線與CPU進(jìn)行通訊。uPD16311的主要性能特點(diǎn)如下:
????? ·具有多種顯示模式,其顯示模式可在8字×20段到16字×12段的范圍內(nèi)選擇;
????? ·具有按鍵掃描的功能,按鍵矩陣為12×4;
??? ·顯示亮度可調(diào),共有8個亮度等級;
????? ·具有高電壓輸出;
·具有一個4位通用輸入口和一個5通道的LED輸出口;
????? ·輸出端口不需要額外的上拉或下拉電阻。
uPD16311是一個可編程器件,它的任何一種功能需要對其編程后才能實(shí)現(xiàn)。因此,如何對其編程便成了應(yīng)用的關(guān)鍵。為實(shí)現(xiàn)對uPD16311的正確編程,必須先了解它的控制命令。
2.2 uPD16311的控制命令
uPD16311有四條控制命令:顯示模式命令、數(shù)據(jù)設(shè)置命令、地址設(shè)置命令和顯示控制命令。顯示模式命令用來設(shè)置uPD16311的顯示模式。其命令代碼為08H、09H,...0FH。依次表示9字×19段模式、10字×18段模式、...16字×12段模式。命令代碼小于08H,則表示8字×20段模式。執(zhí)行該命令時,顯示會被強(qiáng)行關(guān)閉。要想恢復(fù)顯示,必須執(zhí)行一次顯示控制命令,將顯示打開。
數(shù)字設(shè)置命令用來設(shè)置數(shù)據(jù)寫入與讀出的方式。命令代碼同樣也是一字節(jié)(8位)。b0、b1兩位用來設(shè)置數(shù)據(jù)的傳輸方向。在向顯示存儲器寫數(shù)據(jù)或讀鍵盤狀態(tài)時,b0、b1兩位分別設(shè)為“00”和“10”。b2位用來設(shè)置數(shù)據(jù)傳輸方式。當(dāng)b2置為1時,數(shù)據(jù)被寫入某一顯示存儲單元中,其地址由地址設(shè)置命令來設(shè)置,寫入數(shù)據(jù)后,地址不變化。當(dāng)b2置為0時,數(shù)據(jù)以地址遞增的方式進(jìn)行傳輸,即數(shù)據(jù)寫入某一數(shù)據(jù)存儲單元后,其地址自動加1,這意味著在這種方式下可以向顯示存儲器的某一存儲單元連續(xù)寫入數(shù)據(jù)。b3位用來設(shè)置測試方式。當(dāng)b3位置為1時,芯片工作在測試方式;當(dāng)b3位置為0時,芯片工作在正常工作方式。b6位固定為1。這樣,以地址遞增方式向顯示存儲器寫數(shù)據(jù)或讀鍵盤的命令代碼為40H、42H。
地址設(shè)置命令用來設(shè)置要寫入數(shù)據(jù)的存儲單元地址,其命令代碼為0C0H-0EFH,依次表示00H-2FH范圍內(nèi)的存儲單元地址。當(dāng)寫入地址超出這一范圍時,數(shù)據(jù)將不被寫入。
顯示控制命令用來控制顯示的開與關(guān)以及顯示亮度,命令代碼為一字節(jié)。b3位用來控制顯示的開與關(guān)。當(dāng)b3置為1時,顯示被打開;當(dāng)b3置為0時,顯示被關(guān)閉。b0、b1、b2三位用來控制柵極脈沖寬度。uPD16311通過對柵極脈沖寬度的控制實(shí)現(xiàn)對顯示亮度的控制。b0、b1、b2三位從“000”到“111”,亮度依次遞增。B7位固定為1。如高亮度打開顯示,命令代碼為87H。
在芯片剛接通電源時,芯片處于正常工作方式且數(shù)據(jù)以地址遞增方式傳輸,顯示處于關(guān)狀態(tài),顯示模式的缺省設(shè)置為16字×12段模式,地址的缺省設(shè)置為00H。
3 uPD16311在DVD前面板中的應(yīng)用
前面板作為DVD整機(jī)的一個重要部件,其主要功能是:捕獲用戶遙控命令;捕獲用戶按鍵命令;與解碼板進(jìn)行通訊;顯示DVD工作狀態(tài)。其中,與uPD16311有關(guān)的是捕獲用戶按鍵命令和顯示DVD工作狀態(tài)。
3.1 前面板電路組成
如圖1所示,前面板主要是由89C51、uPD16311、VFD顯示器件和少量的分立元件組成。其中,89C51是ATMEL公司的微處理器。圖1中畫出了89C51與uPD16311控制有關(guān)的三個引腳P3.3、P3.4和P3.5。P3.3作為uPD16311的片選信號,P3.4作為時鐘信號,P3.5是數(shù)據(jù)輸入輸出腳。89C51通過P3.5腳向uPD16311寫入命令和數(shù)據(jù),或從uPD16311讀出數(shù)據(jù)(主要是按鍵鍵位信號)。數(shù)據(jù)的寫入和讀出是由時鐘信號控制的;VFD顯示器件采用FUTABA的熒光顯示管13-BIT-155Gk。它具有13個柵極和15個段,共有54個引腳。其中,18-35腳未用。1-2、53-54腳是燈絲電源引腳。5-17腳(G13-G1)是13個柵極輸出引腳,36-50腳(P15-P1)是15個段位引腳。該VFD帶有10位“米8字”和3位特殊功能字,每個字由15位(兩個字節(jié))顯示代碼控制(這兩個字節(jié)的顯示代碼必須按照FUTABA提供的資料事先進(jìn)行正確的編碼)。通過編程,能夠清楚顯示DVD的工作狀態(tài),如有盤、無盤顯示,盤旋轉(zhuǎn)、盤靜止顯示,盤片是DVD、還是VCD、還是CD顯示,雙聲道或5.1聲道顯示,暫停、播放、快進(jìn)/退顯示,時間顯示等等。由于采用的VFD顯示器件是13字×15段類型的,所以硬件接線上,uPD16311的27-29腳要作為段使用(S13-S15),36、35和32-30腳要作為柵極使用(G9-G13)。整個電路接線簡單。
3.2 uPD16311的控制時序
uPD16311是通過一個串行口與CPU及其它器件進(jìn)行通訊的。圖1中,只有當(dāng)STB為低電平時,uPD16311方可從Din上讀取數(shù)據(jù),而且數(shù)據(jù)讀取是在CLK的上升沿到來時進(jìn)行的。uPD16311的控制命令必須在STB剛由高電平變?yōu)榈碗娖綍r傳輸。只有在給uPD16311傳輸完一條命令后,方可向uPD16311的顯示存儲器寫入數(shù)據(jù),對uPD16311的編程實(shí)際上就是根據(jù)系統(tǒng)的需要,正確地向uPD16311寫入命令和顯示數(shù)據(jù)并讀出鍵盤代碼,也就是需要從uPD16311的Din和Dout口寫入和讀出數(shù)據(jù)。
3.3 uPD16311控制軟件要點(diǎn)
程序首先必須進(jìn)行初始化,在初始化過程中除了要完成對89C51相應(yīng)I/O口的設(shè)置,以及為程序中使用的一些變量設(shè)置初始值外,還包括對uPD16311進(jìn)行初始化設(shè)置。uPD16311初始化設(shè)置主要包括設(shè)定VFD顯示模式、清零顯示存儲區(qū)單·84·元以及打開顯示控制并設(shè)置合適的掃描脈沖寬度等。初始化中,將uPD16311編程接成13個柵極、15個段位的方式(與上述VFD適配),存儲器地址00H、01H對應(yīng)第一個顯示數(shù)字的低位和高位,03H、04H對應(yīng)第二個顯示數(shù)字的低位和高位,…,24H、25H對應(yīng)第十三個顯示數(shù)字的低位和高位。初始化完uPD16311后,程序必須實(shí)時顯示DVD工作狀態(tài),捕獲用戶按鍵命令。而這些也是通過對uPD16311編程來實(shí)現(xiàn)的。
具體編程時,先寫命令字(初始化時),或先寫命令字,再寫地址,再寫數(shù)據(jù)。這里給出兩段關(guān)鍵程序:一段程序為WRITEBYTE,負(fù)責(zé)將數(shù)據(jù)寫入uPD16311;一段程序為READBYTE,負(fù)責(zé)從uPD16311讀出數(shù)據(jù)。程序使用的語言是89C51的匯編語言。
RET?????????????????
這兩段程序在uPD16311的編程中非常重要。如初始化uPD16311為13個柵極、15個段位的顯示模式時,命令碼為#0CH。程序代碼為:
???
在時鐘作用下,從低位到高位一位一位地將數(shù)據(jù)寫到uPD16311。又如將顯示存儲區(qū)地址00H清零,命令代碼為#40H,地址代碼為#0C0H,數(shù)據(jù)代碼為#00H,先選通uPD16311,然后將這三個代碼分別送給累加器A,連續(xù)調(diào)用3次WRITEBYTE即可。
前面板按鍵位置碼可以通過程序READBYTE從uPD16311一位一位地讀出。例如,讀取48個按鍵位置碼(前面板實(shí)際按鍵比這少),并存儲在89C51的存儲單元#2CH-#31H內(nèi),程序如下:
按鍵位置碼將在89C51內(nèi)作進(jìn)一步處理。
目前,UPD16311已成功應(yīng)用于DVD前面板控制電路中。實(shí)踐證明,uPD16311具有功能強(qiáng)、可靠性高等優(yōu)點(diǎn),能夠滿足DVD前面板控制的要求。
參考文獻(xiàn)
2 徐麗香.黎旺星.CD、VCD、DVD—原理、選購、維修.西安:西安電子科技大學(xué)出版社,1998
評論