劉 翠 ,楊海馬 ,劉 瑾 ,倪漢華
(1.上海理工大學(xué) 光電學(xué)院,上海 200093;2.中科院上海技術(shù)物理研究所,上海 200083)
在現(xiàn)實(shí)生活中,液晶屏是一種具有良好人機(jī)交互性能的可視化人機(jī)接口,被廣泛地應(yīng)用于智能儀器、家用電子產(chǎn)品、工業(yè)生產(chǎn)和手持設(shè)備中。在高新技術(shù)企業(yè),液晶屏顯示已經(jīng)成為顯示技術(shù)的主要方式之一[1-2]。隨著電子技術(shù)和智能儀表的不斷發(fā)展以及信息量的不斷增加,單色液晶屏的應(yīng)用越來越受到限制。彩色液晶屏以其信息量大、畫面生動(dòng)美觀等優(yōu)點(diǎn)逐漸獲得人們的喜愛。目前,驅(qū)動(dòng)彩色液晶屏的電路比較復(fù)雜,價(jià)格比較貴,限制了它的廣泛使用。因此,本文設(shè)計(jì)了一種結(jié)構(gòu)簡(jiǎn)單、功能齊全的電路驅(qū)動(dòng)彩色液晶屏,實(shí)現(xiàn)曲線、圖文的動(dòng)態(tài)顯示功能,拓展了彩屏在低端智能儀器設(shè)計(jì)中的使用。
C8051F060單片機(jī)是Cygnal公司完全集成的混合信號(hào)系統(tǒng)級(jí)器件 SoC(System on chip)。其 CIP-51內(nèi)核運(yùn)行速度可達(dá)25 MIPS,除具有標(biāo)準(zhǔn)的8051數(shù)字外設(shè)外,內(nèi)部還集成了常用的模數(shù)和數(shù)模轉(zhuǎn)換模塊,具有2個(gè)16 bit分辨率的 SAR(逐次逼近寄存器型)ADC,轉(zhuǎn)換速率可達(dá)1 Ms/s,1個(gè) 10 bit的 SAR ADC,轉(zhuǎn)換速率可達(dá)200 ks/s,2個(gè)12 bit DAC,可用于產(chǎn)生無抖動(dòng)的模擬電壓輸出。豐富的外設(shè)資源和高速指令運(yùn)算能力大大簡(jiǎn)化了系統(tǒng)設(shè)計(jì)[3-5]。
TFT0305-A是由恒方電子有限公司生產(chǎn)的,屏幕尺寸為3.5寸,可顯示256種顏色,顯示分辨率為320×240,自帶標(biāo)準(zhǔn)的中文字庫,顯示漢字和字符極為方便。字庫芯片采用GT23L32S4W,支持GB2312國(guó)標(biāo)漢字(含有國(guó)家信標(biāo)委合法授權(quán))及ASCII字符,用戶通過字符內(nèi)碼,利用GT23L32S4W手冊(cè)提供的方法計(jì)算出該字符點(diǎn)陣在芯片中的地址,把地址信息送入地址寄存器就可從該地址中連續(xù)讀出字符點(diǎn)陣信息。液晶屏控制板采用嵌入式CPLD電路控制漢字以及字符的讀寫,不占用主控制器的機(jī)時(shí),字庫芯片和CPLD之間采用PLII總線方式,控制更方便、傳輸數(shù)據(jù)更快。
TFT 液晶屏顯示器件是靠鑲嵌在顯示器件玻璃上的薄膜場(chǎng)效應(yīng)晶體管來完成顯示功能,一個(gè)場(chǎng)效應(yīng)管驅(qū)動(dòng)一個(gè)像素。TFT液晶顯示驅(qū)動(dòng)電路的工作原理是采用逐行掃描的方式完成顯示功能。當(dāng)選通一行的地址時(shí),該行場(chǎng)效應(yīng)管將全部處于導(dǎo)通狀態(tài);此時(shí),列地址將顯示信號(hào)分別施加給該行的每個(gè)晶體管上,實(shí)現(xiàn)顯示功能。當(dāng)選通下一行地址時(shí),該行的場(chǎng)效應(yīng)管將全部進(jìn)入無效狀態(tài),無論列驅(qū)動(dòng)器如何變化,該行都保持不變,即該行的電壓將保持一段時(shí)間,而這段時(shí)間與掃描的行數(shù)無關(guān)[6]。
在實(shí)際應(yīng)用中,液晶屏與單片機(jī)有多種連接方式。從占用I/O口的多少可以分為串行方式和并行方式,其中,串行方式雖然占用的I/O口少,但是速度較并行方式來說比較慢[7]。因此,結(jié)合液晶屏在實(shí)際應(yīng)用中的顯示速度,本文采用并行方式,計(jì)算機(jī)以訪問I/O口設(shè)備的方式直接對(duì)液晶屏顯示模塊進(jìn)行操作。接口電路圖如圖1所示。C8051F060的供電電壓一般為3.3 V,而液晶屏所需供電電壓為5 V,為了使液晶屏正常工作,在單片機(jī)與液晶屏之間加入兩片控制電壓轉(zhuǎn)換的芯片SNC74LVC4245DB。如圖1所示,P7.0~P7.7端口通過電壓轉(zhuǎn)換芯片與TFT液晶屏的數(shù)據(jù)線DB0~DB7相連,P3.1~P3.7分別和液晶屏的控制引腳相連。
TFT0305-A液晶屏的控制板中有兩個(gè)地址寄存器分別用來控制行操作、列操作、頁操作和緩沖區(qū)操作,地址寄存器只能寫,不能讀。讀取漢字和液晶屏顯示操作不能同時(shí)進(jìn)行。讀取漢字時(shí),先往字庫芯片的3個(gè)地址寄存器內(nèi)送入所要顯示漢字的地址,然后從地址寄存器中讀取該漢字的內(nèi)容,放入單片機(jī)的內(nèi)存中。選中液晶屏的片選信號(hào),從單片機(jī)的內(nèi)存中讀出數(shù)據(jù)到液晶屏上顯示。TFT0305-A液晶屏的引腳狀態(tài)及其組合功能如表1所示。液晶控制板的片選信號(hào)、字庫芯片的片選信號(hào)、讀寫信號(hào)和數(shù)據(jù)信號(hào)的時(shí)序關(guān)系如圖2所示[8]。
表1 TFT0305-A液晶屏的引腳狀態(tài)及其組合功能
圖2 液晶控制板與C8051F060控制器的接口時(shí)序
軟件編程環(huán)境采用的是Silicon Labs集成開發(fā)環(huán)境IDE (Integrated Development Environment), 它 是 一 套 完整、獨(dú)立的軟件程序,為設(shè)計(jì)者提供了用于開發(fā)和測(cè)試項(xiàng)目的所有工具。在IDE編程環(huán)境下,系統(tǒng)軟件用C語言編寫,根據(jù)液晶屏的讀寫時(shí)序以及編程要求編寫程序。程序在調(diào)用字庫芯片時(shí),通過CPLD對(duì)字庫芯片進(jìn)行讀寫控制,在讀取數(shù)據(jù)時(shí)數(shù)據(jù)經(jīng)過CPLD緩存后送入到單片機(jī)的存儲(chǔ)區(qū)中。程序經(jīng)過匯編、調(diào)試,燒寫在單片機(jī)的外部存儲(chǔ)區(qū)中。主程序流程圖如圖3所示。
圖3 主程序流程圖
在完成了系統(tǒng)的硬件設(shè)計(jì)和軟件設(shè)計(jì)后,需要對(duì)系統(tǒng)進(jìn)行調(diào)試。通過調(diào)試不斷地優(yōu)化程序代碼。干擾比較小的穩(wěn)定數(shù)據(jù)的獲取決定了系統(tǒng)設(shè)計(jì)的質(zhì)量和可靠性。液晶屏能夠?qū)崟r(shí)顯示采集到的數(shù)據(jù),可以快速反映出采集到的數(shù)據(jù)質(zhì)量,這就為提高系統(tǒng)的性能提供了可能性。
C8051F060單片機(jī)采用的系統(tǒng)晶振頻率為25 MHz,定時(shí)器時(shí)鐘選擇為系統(tǒng)時(shí)鐘的12分頻。顯示動(dòng)態(tài)曲線更新頻率和幀頻計(jì)算公式如式(1)和式(2):
其中,f為系統(tǒng)晶振頻率,M為定時(shí)器時(shí)鐘分頻數(shù),N為兩次動(dòng)態(tài)掃描時(shí)間間隔,S為曲線掃描區(qū)域像素值,R為總顯示區(qū)域像素值。
經(jīng)實(shí)際測(cè)試可獲得以下數(shù)據(jù) (TFT-0305液晶屏的顯示分辨率為320×240):兩次動(dòng)態(tài)曲線掃描時(shí)間間隔為 21 588,由式(1)可得動(dòng)態(tài)掃描頻率為 96.5 Hz,由式(2)可得幀頻為 40.2 Hz。
本文介紹了C8051F060單片機(jī)與TFT-LCD液晶屏接口方法及顯示設(shè)計(jì),可以在智能儀表中實(shí)時(shí)地顯示波形,硬件電路設(shè)計(jì)簡(jiǎn)單可靠,軟件設(shè)計(jì)簡(jiǎn)單易行,顯示圖形清晰流暢,曲線更新頻率可調(diào)。本文設(shè)計(jì)的特點(diǎn)在于,采用帶字庫型彩色液晶屏,方便、快捷地動(dòng)態(tài)調(diào)用字庫內(nèi)的漢字和字符,無需在程序中寫出漢字的內(nèi)碼,編程時(shí)可為單片機(jī)節(jié)省大量的空間,為內(nèi)存比較小的單片機(jī)的操作和設(shè)計(jì)提供了可能,為彩色液晶在低端智能儀表中的使用奠定了良好的基礎(chǔ)。設(shè)計(jì)單片機(jī)與液晶屏接口電路以及軟件調(diào)試過程的經(jīng)驗(yàn),可為今后開發(fā)研究其他類型的彩色液晶屏控制、驅(qū)動(dòng)和顯示提供一些幫助。
[1]丁建軍,王曦華.基于8051單片機(jī)的液晶屏接口設(shè)計(jì)[J].計(jì)算機(jī)工程應(yīng)用技術(shù),2009,5(34):9839-9840.
[2]孫盛坤,丁昊,宋杰.基于 FPGA和 TFT彩屏液晶屏的便攜 式 示 波 器 設(shè) 計(jì)[J].電 子 設(shè) 計(jì) 工 程 ,2011,19(4):158-161.
[3]李圣昆,張永樂,任勇峰.基于 C8051F060的采集存儲(chǔ)系統(tǒng)的設(shè)計(jì)[J].電子設(shè)計(jì)工程,2009,17(2):14-16.
[4] LiLei, Chen Yangzhen, Zhou Huaping, etal.The application of hall sensors ACS712 in the protection circuit of controller for humanoid robots[C].IEEE Conference on Computer Application and System Modeling, Taiyuan:IEEE CPS, 2010:101-102.
[5] Sun Mingge, Zhu Xilin.Design ofauto disturbance rejection controllerbased on field-bus[C].2010 IEEE InternationalConference on Information and Automation(ICIA), Piscataway, N.J: IEEE,2010:992-996.
[6]張俊謨.SoC單片機(jī)原理與應(yīng)用:基于C8051F系列[M].北京:北京航空航天大學(xué)出版社,2007.
[7]郭強(qiáng).液晶顯示模塊應(yīng)用及調(diào)試[M].北京:電子工業(yè)出版社,2010.
[8]恒方電子有限公司.液晶模塊TFT0305-A技術(shù)規(guī)格文件[S].2009.