咨詢電話
ENGLISH0755-88840386發(fā)布時間:2019-12-02 09:24:17 |來源:網(wǎng)絡轉(zhuǎn)載
本文針對工業(yè)稱重儀表,設計一種人機交互界面.該儀表界面采用真空熒光顯示屏(VFD)專用控制/驅(qū)動芯片CS16312,集成了VFD顯示控制、按鍵控制、LED顯示控制等功能,有效地節(jié)省了單片機的接口資源,簡化了電路的設計.實驗測試表明:該界面具有顯示穩(wěn)定可靠、抗干擾能力強、人機界面友好、操作簡單方便等性能.具有良好的應用推廣價值.
人機交互面板是工業(yè)稱重儀表的一個重要部件,用戶所有的控制指令都是通過它傳到微控制器進行處理.同時工業(yè)稱重儀表在工作的過程中有許多重要的信息要通過顯示面板上的顯示器顯示出來.
儀器儀表的顯示屏以往常采用LED數(shù)碼管.LED因其元器件多,面積大,功耗高,接口電路復雜,集成度低,顯示信息簡單等缺點,逐漸被液晶顯示屏LCD和真空熒光顯示屏VFD所代替[1].
真空熒光顯示屏(Vacuumfluorescentdisplay,VFD)是一種特殊變體的三級真空管,其電子從負極(燈絲)發(fā)射出來,通過柵網(wǎng)加速后撞擊正極表面附著的磷光體從而發(fā)光.VFD的主要性能是:自動發(fā)光、高清晰度和高亮度顯示、低壓操作、低功耗、可靠且使用壽命長、有從紅色到藍色多種色彩(使用濾色器可獲得更多色彩)、寬視角、反應速度快等[2].
考慮到成本、顯示亮度及工業(yè)稱重儀表的工作環(huán)境等因素,最終采用7位段碼VFD和16位537點陣VFD作為該稱重顯示儀表的顯示屏.其中7段碼VFD用來實時顯示稱重的數(shù)值,由一片CS16312芯片驅(qū)動;537點陣VFD可以顯示的信息比較豐富,用來顯示稱重儀表的系統(tǒng)設置等相關的輔助信息,由3片CS16311芯片驅(qū)動.本文以CS16312為例對人機交互系統(tǒng)的軟硬件設計及其在工業(yè)稱重儀表中的應用做詳細的論述.
本電路采用微控制器AT89C52和VFD驅(qū)動電
路16312構(gòu)架.通過VFD顯示、按鍵和LED標識構(gòu)成工業(yè)儀表的人機界面.
1.1 電源電路
電源采用工業(yè)市電經(jīng)變壓器降壓和整流后產(chǎn)生燈絲電壓(F1,F2)、CS16312的下拉電壓VEE(-24V)和電壓VDD(+5V).
為了讓陰極加熱到設定的溫度值,以獲得良好的熱電子發(fā)射,需要對燈絲通電加熱,燈絲電壓(Ef)的施加方法有交流驅(qū)動和直流驅(qū)動兩種工作方式.其中直流驅(qū)動由于燈絲加熱電壓在燈絲上有一個電位分布,存在左高右低的梯度.亮度也就同樣會產(chǎn)生右高左低的現(xiàn)象.為了獲得均勻的亮度,必須對熒光顯示屏的柵極和燈絲間的實際距離進行設計補償.由于設計補償?shù)姆秶怯邢薜?故直流驅(qū)動,一般只限于燈絲較短的熒光顯示屏.交流驅(qū)動有單側(cè)接地和中心抽頭接地兩種方法.燈絲單端接地的方式所需的截止偏壓,比燈絲變壓器中心抽頭接地方式更大.故本電路采用帶有中心抽頭的交流驅(qū)動工作方式[3].
在陽極、柵極上相對燈絲電位加上正電壓,筆段就會被點亮.若要完全消除顯示,必須使陽極或柵極的任何一方相對燈絲為零電位或更負的電位.消除顯示的電壓稱為截止電壓,為了完全消除漏光,必須施加截止偏壓.CS16312采用負壓輸出,陽柵腳在邏輯0時輸出負壓,在邏輯1時輸出電平為0V.為驅(qū)動VFD,須下拉燈絲繞組中心抽頭電位.穩(wěn)壓管D1的穩(wěn)壓值由VFD截止電壓決定.
燈絲電壓值的設定,對保證顯示品質(zhì)及壽命有重要的影響.如果燈絲電壓過高,電流或亮度并不隨之增加,反而因陰極溫度上升,而加速鎢絲芯線上氧化物的蒸發(fā),同時也會污染熒光粉表面,使發(fā)光效率及亮度提早下降,而縮短壽命.相反,如果燈絲電壓過低,因陰極溫度下降,便無法獲得充分而穩(wěn)定的熱電子發(fā)射,致使顯示品質(zhì)劣化或燈絲電壓變動而使亮度不穩(wěn)定.參照VFD規(guī)格說明書,通過多次的測試,設定F1和F2兩端的燈絲電壓值為3.3V[4].
1.2 VFD與LED控制電路
AT89C52通過三線與CS16312通信.P1.0用于數(shù)據(jù)輸入,與DIN相連.P1.1用于數(shù)據(jù)輸出,與DOUT相連.P1.2產(chǎn)生串行時鐘信號CLK.P1.3與CS16312的STB連,產(chǎn)生數(shù)據(jù)/命令識別信號.因DOUT口為N溝道開漏輸出,故需接上拉電阻R1,以形成數(shù)據(jù)電平信號.CS16312內(nèi)建OSC,R2決定其振蕩頻率,其典型值為56K.CS16312的7根GRID線分別接到VFD的柵極(grid)G1~G7,13根SEG線與VFD的陽極(anode)P1~P13相連.動態(tài)掃描顯示由CS16312內(nèi)建硬件電路自動完成.GRID線循環(huán)輸出柵極掃描信號,SEG線輸出取之內(nèi)部顯示RAM區(qū)與之對應的顯示信號①.
CS16312有4個LED輸出口,本系統(tǒng)用LED1作為電源開關的指示燈,LED2,LED3,LED4作為稱重狀態(tài)指示燈.當向某一端口寫0時,與之對應的LED燈將被點燈;寫1時,相應的燈將熄滅.
1.3 稱重儀表按鍵電路
CS16312的KEY線與SK線組成鍵盤.二極管用于隔離陽極驅(qū)動電壓.內(nèi)嵌硬件鍵掃描電路在KS線輸出鍵掃描信號,KEY線接收鍵值(在顯示周期的末端鎖存至內(nèi)部RAM).本系統(tǒng)中的鍵盤電
路共有20個接鍵,每個鍵的數(shù)據(jù)通過一個命令讀出,讀取順序從最低位開始
2.1 軟件流程
CS16312控制儀表的控制流程,其對應著VFD顯示、LED控制和按鍵掃描的程序流程.CS16311具有顯示方式設置、數(shù)據(jù)讀寫方式設定、數(shù)據(jù)地址設定和顯示控制等4條指令.MCU對CS16312的訪問是通過這4條指令來執(zhí)行的.MCU每次對驅(qū)動電路的訪問時間是在STB信號的下降沿開始,STB的上升沿結(jié)束.在CLK信號的上升沿讀入數(shù)據(jù),一次訪問只能傳送一個命令字節(jié)或者一個命令字節(jié)加上多個數(shù)據(jù)字節(jié),數(shù)據(jù)容量最多為22個字節(jié).這些數(shù)據(jù)通過管腳DIN被存儲在顯示緩沖電路中,顯示緩沖電路中輸出的數(shù)據(jù)經(jīng)過放大電路放大后從段/位驅(qū)動電路輸出驅(qū)動VFD顯示屏,或者直接在LED輸出口輸出驅(qū)動LED狀態(tài)燈;通過管腳DOUT獲取芯片中存儲的按鍵和SW信號②.
2.2 編程實現(xiàn)[5]
以下函數(shù)實現(xiàn)了VFD稱重顯示器的顯示、LED標識控制和按鍵掃描:部分代碼及其說明如下:
1)函數(shù)VFDWriteOneByte(ucharbvalue)實現(xiàn)寫一個字節(jié)的數(shù)據(jù)到CS16312.
Void VFDWriteOneByte (uchar bvalue)
{
uchar i ;
for (i = 0 ;i < 8 ;i + + )
{
CL K= 0 ;
/ 3 CL K控制傳輸,一個CL K周期為一個位的讀寫信號3 /
DIN = bvalue &(1 < < i) ;
CL K= 1 ;
}
}
2) 函數(shù)ShowMessageOnVFD( uchar 3 st r ,uchar
count) 將要顯示的數(shù)字字符顯示在VFD 上.
void ShowMessageOnVFD(uchar 3 st r ,uchar count)
{
STB = 1 ;STB = 0 ;
/ 3 設置顯示模式為7 3 13 3 /
VfdWriteOneByte (VFD1_DISP_SET) ;
STB = 1 ;delay(10) ;STB = 0 ;
/ 3 設置數(shù)據(jù)讀寫方式為寫數(shù)據(jù)到顯示存儲器中3 /
VfdWriteOneByte (WR_TO_MEM) ;
STB = 1 ;delay(10) ;STB = 0 ;
/ 3 設置顯示存儲器地址為自增量模式3 /
VfdWriteOneByte (ADDR_SET) ;
/ 3 寫入要顯示的字符信息3 /
STB = 1 ;delay (10) ;STB = 0 ;
/ 3 顯示控制命令,顯示通3 /
VfdWriteOneByte (DISP_ON) ;
STB = 1 ;
return ;
}
3) 函數(shù)L EDLight ( uchar num) 點亮相應的L ED
燈.
void L EDLight (uint num)
{
STB = 1 ;STB = 0 ;
/ 3 設置數(shù)據(jù)讀寫方式為寫數(shù)據(jù)到L ED 端3 /
VfdWriteOneByteD2 (WR_TO_L ED) ;
/ 3 將L ED 的狀態(tài)信息寫入L ED 端3 /
VfdWriteOneByteD2 ( . . . ) ;
STB = 1 ;
return ;
}
4) 函數(shù)Get KeyValue (void) 獲得鍵值.
uchar Get KeyValue (void)
{
STB = 1 ;STB = 0 ;
/ 3 設置數(shù)據(jù)讀寫方式為讀鍵值3 /
VfdWriteOneByte (RD_KEY) ;
For (i = 0 ;i < MAXKEY;i + + )
{
CL K= 0 ;
If ( DOUT = = 1) return i ; / 3 返回按鍵的序號3 /
CL K= 1 ;
}
Return - 1 ; / 3 如果沒有鍵值返回- 1 3 /
}
首先,測試VFD顯示是否正常.測試方式:讓數(shù)
字VFD分別顯示1~7數(shù)字.測試結(jié)果:顯示清晰明亮,背光與向光環(huán)境均能清晰顯示.
其次,測試LED燈控制是否正常.測試方式:讓LED燈逐一點亮并逐一熄滅,即走馬燈程序.測試結(jié)果:LED燈亮度正常,關斷自如.
最后,測試按鍵掃描是否正常.測試方式:將按鍵鍵值通過VFD顯示出來.測試結(jié)果:按鍵鍵值能正確顯示.按鍵防抖性強.
為了進一步驗證這個VFD顯示模塊的優(yōu)越性,已在實際工業(yè)稱重儀表的開發(fā)中得到應用.
4 結(jié)束語
基于CS16312的VFD顯示模塊是一種性能價格比較高的真空熒光顯示模塊,該稱重模塊與單片機的接口簡單.由于它可能顯示各種字符,又能實現(xiàn)按鍵控制、LED顯示控制等功能,人機接口友好,因此,在儀器儀表領城中得到廣泛應用[6].
參考文獻:
[1] 林福宗.VCD與DVD技術(shù)基礎[M].北京:清華大學出版社,1995.
[2] 阮世平.真空熒光顯示器應用的現(xiàn)狀及發(fā)展[J].光電子技術(shù),1995(6):103-108.
[3] 顏仍友,汪仁煌.VFD顯示驅(qū)動和控制芯片TP6312在電磁爐顯示電路中的應用[J].國外電子元器件,2005(2):14-17.
[4] 梁建輝,楊金巖.VFD控制器/驅(qū)動器μPD16312的原理與應用[J].國外電子元器件,2003(1):58-62.
[5] 徐愛鈞,彭愛華.單片機高級語C51應用程序設計[M].北京:北京工業(yè)出版社,1999.
[6] 趙廣萍,孫文萍,孫建軍.電子稱重技術(shù)現(xiàn)狀及發(fā)展趨勢[J].儀表技術(shù)與傳感器,2007(7):76-77.
本文源于網(wǎng)絡轉(zhuǎn)載,如有侵權(quán),請聯(lián)系刪除