液晶顯示器件獨(dú)具的低壓、微功耗特性使它可以直接與大規(guī)模集成電路結(jié)合開(kāi)發(fā)出一系列具有便攜顯示功能的產(chǎn)品,再加之其顯示信息量大和接口方便等優(yōu)點(diǎn),現(xiàn)在已被廣泛應(yīng)用于計(jì)算機(jī)和數(shù)字式儀表等領(lǐng)域,成為測(cè)量結(jié)果顯示和人機(jī)對(duì)話的重要工具。本文方案選用SMC0820E液晶顯示模塊作為顯示器件。為使LCM在不同的溫度下有較好顯示效果,還引入數(shù)字電位器X9313實(shí)現(xiàn)其溫度補(bǔ)償電路,有效控制LCM偏壓輸入。本文在介紹SMC0820E和X9313的基礎(chǔ)上,討論了兩者的硬件接口電路及軟件編程。 液晶顯示模塊SMC0820E SMC0802E標(biāo)準(zhǔn)字符點(diǎn)陣型液晶顯示模塊,采用點(diǎn)陣型STN(Super Twisted Nematic)液晶顯示器,可顯示2×8西文字符,字符尺寸為2.96mm×5.56(W×H)mm,內(nèi)置HD44780接口型液晶顯示控制器,可與MCU單片機(jī)直接連接,廣泛應(yīng)用于各類(lèi)儀器儀表及電子設(shè)備。 1 主要技術(shù)參數(shù) 工作電壓:4.8~5.2V; 工作電流:2.0mA(5.0V); 工作溫度:-30~+80℃; 接口方式:并行接口。 2 溫度特性 液晶既具有晶體的雙折射性又具有液體的流動(dòng)性,只有在一定的溫度范圍內(nèi)才呈現(xiàn)液晶態(tài),且在液晶態(tài)溫度范圍內(nèi),其特性也隨溫度變化而變化,這一特性對(duì)STN型LCD尤其重要。因此,LCD的特性與環(huán)境溫度密切相關(guān)。溫度低時(shí),LCD的透射比就會(huì)降低,引起圖像模糊;溫度高時(shí),又會(huì)產(chǎn)生嚴(yán)重的交叉效應(yīng)。為保證液晶顯示能在較寬的溫度范圍內(nèi)正常工作,驅(qū)動(dòng)電路的溫度補(bǔ)償是必不可少的。本方案引入數(shù)字電位器X9313進(jìn)行溫度補(bǔ)償,可通過(guò)控制LCM的偏壓輸入使其保持穩(wěn)定的對(duì)比度。通過(guò)實(shí)驗(yàn),可得本文選用的液晶顯示模塊偏壓輸入的溫度特性,該溫度范圍適合正常工作環(huán)境的要求,具體數(shù)據(jù)如表1所示。 由表1可知,對(duì)LCM偏壓輸入的控制分為兩部分:常溫和低溫。為得到低溫情況下詳細(xì)的溫度特性,對(duì)表1中數(shù)據(jù)進(jìn)行三次樣條曲線擬合,可以得到該區(qū)間內(nèi)任一溫度對(duì)應(yīng)的偏壓輸入值,擬合曲線如圖1所示。 圖1 LCM溫度特性擬合曲線 數(shù)字電位器X9313 數(shù)字電位器屬于模擬/數(shù)字混合信號(hào)產(chǎn)品,是一種步進(jìn)可調(diào)電阻。其輸入為數(shù)字量,輸出為模擬量,是一種特殊的數(shù)/模轉(zhuǎn)換器。但其輸出量并非電壓或電流,而是電阻值或電阻比率,故亦稱(chēng)之為電阻式數(shù)/模轉(zhuǎn)換器。 1 性能特點(diǎn) 數(shù)字電位器與機(jī)械電位器相比,具有許多優(yōu)點(diǎn),具體性能優(yōu)點(diǎn)如下: (1)采用集成電路工藝制成的,徹底解決了因滑片磨損而造成接觸不良的問(wèn)題。 (2)很容易與單片機(jī)或計(jì)算機(jī)接口,為實(shí)現(xiàn)批量產(chǎn)品的自動(dòng)調(diào)節(jié)創(chuàng)造了條件。 (3)具有存儲(chǔ)設(shè)置或數(shù)據(jù)的記憶功能。下次通電時(shí)能自動(dòng)恢復(fù)上次操作時(shí)的存儲(chǔ)位置。 (4)重復(fù)性好、可靠性高、密封性好、噪聲低、不容易受污染、防潮濕、抗振動(dòng)、抗沖擊、基本不受溫度、濕度、壓力等環(huán)境因素的影響,使用壽命長(zhǎng),能提高系統(tǒng)的可靠性。 2 工作原理 X9313為基于三線加/減式接口的單路32抽頭非易失性數(shù)字電位器。該接口屬于異步串行接口,通過(guò)三根線來(lái)傳送控制信號(hào),包括片選信號(hào)(CS)、滑動(dòng)方向控制信號(hào)線(U/D)和滑動(dòng)端控制信號(hào)線(INC,又稱(chēng)計(jì)數(shù)脈沖輸入信號(hào)線)。X9313有多種工作模式可供選擇,用戶通過(guò)不同狀態(tài)下控制信號(hào),選擇所需的工作模式,具體內(nèi)容可參見(jiàn)X9313數(shù)據(jù)手冊(cè)。 3 硬件接口電路 液晶顯示模塊SMC0802E與微控制器的接口有直接訪問(wèn)和間接訪問(wèn)兩種。直接訪問(wèn)方式就是把LCM作為存儲(chǔ)器或I/O設(shè)備直接掛在單片機(jī)總線上;間接訪問(wèn)方式就是把LCM與單片機(jī)的某個(gè)I/O口連接,單片機(jī)通過(guò)對(duì)該I/O口的操作間接實(shí)現(xiàn)對(duì)LCM的控制。本方案采用直接訪問(wèn)方式,LCM的讀寫(xiě)和片選信號(hào)也由MCU直接控制。數(shù)字電位器X9313的控制端CS、U/D、INC分別與MCU的三個(gè)I/O口連接,由MCU直接控制;輸出端通過(guò)兩個(gè)3kΩ分壓電阻與SMC0802E的VEE和V0連接,VEE為液晶顯示模塊負(fù)壓輸出,經(jīng)過(guò)電位器分壓,得到所需偏壓輸入V0,調(diào)節(jié)LCM對(duì)比度。NPN型三極管的E極接入MCU的I/O口,C極接入SMC0802E的BLK引腳,通過(guò)MCU輸出高低電平,控制三極管的導(dǎo)通,從而控制LCM背光的打開(kāi)和關(guān)閉。具體硬件接口電路如圖2所示。 圖2 硬件接口電路 4 程序設(shè)計(jì) 軟件采用嵌入式C語(yǔ)言開(kāi)發(fā),溫度補(bǔ)償程序流程圖如圖3所示。 圖3 溫度補(bǔ)償程序流程圖 數(shù)字電位器程序主要包括三個(gè)部分:調(diào)節(jié)阻值至零,調(diào)節(jié)阻值至所需位置和保存阻值。根據(jù)X9313的模式選擇和時(shí)序波形圖,控制MCU的I/O口輸出,選擇數(shù)字電位器不同的工作模式,輸出不同的阻值,調(diào)節(jié)LCM偏壓輸入。具體通用程序如下: void X9313_SetVol(uchar R_Num) { uchar i; _DINT(); P2OUT |= BIT0; _NOP();_NOP(); P2OUT |= BIT1; _NOP();_NOP(); P2OUT &= (~BIT0); _NOP(); //調(diào)節(jié)阻值到零 P2OUT &= (~BIT2); _NOP();_NOP(); for(i=0;i{ P2OUT |= BIT1; Delay(2); P2OUT &= ("BIT1); Delay(2); } //調(diào)節(jié)阻值到R_Num P2OUT |= BIT2; _NOP();_NOP(); for(i=0;i{ P2OUT |= BIT1; Delay(2); P2OUT &= (~BIT1); Delay(2); } //保存電阻值 P2OUT |= BIT1; Delay(2); P2OUT |= BIT0; Delay(2); P2OUT |= BIT2; Delay(2); P2OUT |= BIT1; _EINT(); } 數(shù)字電位器輸出電阻分辨率為總阻值的1/32,程序中R_Num表示模擬開(kāi)關(guān)的位置,電位器輸出電阻即為總阻值的R_Num/32。void Delay(int x)為延時(shí)函數(shù),延時(shí)時(shí)間約Xms。 結(jié)語(yǔ) 將設(shè)計(jì)好的系統(tǒng)放入溫度箱,進(jìn)行溫度實(shí)驗(yàn),結(jié)果表明:在不同溫度下,數(shù)字電位器輸出不同的電阻值,液晶顯示模塊對(duì)比度穩(wěn)定,顯示良好。 |