新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 基于單片機和液晶模塊的LCD控制及觸屏接口設計

基于單片機和液晶模塊的LCD控制及觸屏接口設計

作者: 時間:2017-06-04 來源:網(wǎng)絡 收藏

 0 引言

本文引用地址:http://butianyuan.cn/article/201706/348325.htm

  隨著嵌入式系統(tǒng)的廣泛應用, 出現(xiàn)了大量的16位和32位的嵌入式處理器。而傳統(tǒng)的8位單片機長期用于生產(chǎn)實踐, 制造工藝成熟、性能更加可靠, 仍然占有相當大的市場, 特別是在汽車電子等對可靠性要求極高的領域。液晶顯示位模塊具有顯示信息量豐富、功耗低、體積小、質量輕、無輻射等優(yōu)點。

  觸摸屏作為一種特殊的計算機外設, 是目前最自然、便利的一種人機交互方式。T32QM 6450液晶顯示模塊是帶有觸摸屏功能TFT 型彩色顯示屏, 分辨率為240×320, 支持2.6 ×105色顯示。其功能強, 使用方便, 接口簡單, 具有豐富的專用控制指令, 可方便地實現(xiàn)畫面滾動顯示及觸摸屏等功能。

  1 T32QM6450液晶模塊結構

  T32QM 6450是液晶模塊, 主要由TFT - 顯示器、LED背光燈、觸摸屏、源極驅動IC IS2102和柵極驅動IC IS2202構成, 其中Source Driver負責提供列上各色素點的驅動電壓, 而Ga te Driver控制每行像素的選通狀態(tài)。TFT液晶的每個像素點都是由集成在像素點后面的薄膜晶體管來驅動, 從而可以做到高速度、高亮度、高對比度顯示屏幕信息, 可以精確控制顯示灰度, 通過總線與處理器連接, 實現(xiàn)數(shù)據(jù)和指令的傳遞。

  2 T32QM6450與W77E58接口電路

  硬件連接如圖1所示。處理器芯片選用W77E58.該芯片是一個快速8051兼容微控制器, 其內核經(jīng)過重新設計, 提高了時鐘速度和存儲器訪問周期速度。它的指令集基本與8051相同, 多了一條DEC DPTR指令。8051每12個時鐘周期為一個機器周期, 而W77E58每4個時鐘周期為一個機器周期, 提高了指令執(zhí)行速度。另外, W77E58 還可調整MOVX 指令的周期,范圍為2~ 9個機器周期, 這種設計使W77E58能夠更有效訪問慢速或快速外部RAM 及外設。

圖1 液晶屏與W77E58硬件連接電路

  因為W77E58是高速8 位單片機, 而該LCD模塊采用16位總線接口, 所以電路中用了2 片鎖存器74HC573, 用P24~P27口分別控制2片鎖存器的鎖存使能和輸出使能引腳LE (下降沿鎖存) 、OE (低電平有效), 先給第一片74HC573的LE一個高電平, 通過P1口傳送低8 位數(shù)據(jù), 然后給該片的LE 低電平鎖存當前數(shù)據(jù); 給第二片的LE 高電平, 同樣通過P1口傳送高8位數(shù)據(jù)并鎖存, 最后同時給2片74H C573的OE低電平, 即可實現(xiàn)16位數(shù)據(jù)的傳送。

  該系統(tǒng)是混合電壓系統(tǒng), 液晶模塊和ADS7843用3.3 V 供電, 而處理器和鎖存器是5 V 供電, 這2部分是不能直接相連的。所以還要處理好電平的轉換問題, 電路中用4 片雙向電平轉換芯片74LVC4245, 它可以實現(xiàn)3.3 V和5 V的相互轉換。

  為實現(xiàn)觸摸屏功能, 電路中用1 片ADS7843.它是電阻式觸摸屏控制芯片, 具備串行12 位A /D轉換功能, 在關閉模式下, 功耗僅為0.5uW, 在12 V、125 kH z的工作模式下功耗為750 uW3. 文中僅結合電路對主要功能加以介紹。CS是芯片選通端; DCLK 是時鐘輸入端, 由P20 腳軟件模擬時鐘信號輸入; DIN 是數(shù)據(jù)串行輸入端, 控制數(shù)據(jù)通過該引腳輸入; X+ 、Y + 、X- 、Y - 是接觸點坐標數(shù)據(jù)輸入端; INT是中斷引腳, 用于通知MCU 有觸摸事件發(fā)生, DOUT 將轉換后的觸摸位置數(shù)據(jù)串行輸出到MCU。

3 LCD 顯示的程序設計

  3. 1 指令、數(shù)據(jù)的讀寫

  通過對LCD模塊的RS引腳設置1或0 值, 即可實現(xiàn)處理器和LCD之間數(shù)據(jù)或指令的傳送。當設定RS= 1, 傳遞的是數(shù)據(jù)信號; 設定RS= 0, 傳遞的是指令信號, 模塊的D8~ D15端口接收到的數(shù)據(jù)(即高8位)代表寄存器號, D0~ D7接收到的是控制指令。部分子程序如下:


3. 2 字符、漢字及顏色的顯示

  可調用以上子程序方便地向LCD模塊發(fā)送控制命令和顏色信息。T32QM 6450模塊共有158 個寄存器, 通過調用WriCom 函數(shù)可向相關寄存器寫入控制命令, 然后調用WriData寫入2字節(jié)的顏色信息, 其RGB格式為: 紅色為高5位( B it15~B it11), 綠色為中間6位( B it10~ B it5), 藍色為低5位( B it4~B it0)。經(jīng)以上操作, 即可在指定位置或區(qū)域顯示色彩、字符、圖象等。如要在屏上坐標為(X, Y) 的點以顏色Co lo r顯示一個字符或漢字, 只要知道其點陣數(shù)組, 在每個要顯示的點調用W r iDa ta(Color)即可。圖片的顯示原理類似, 用轉換工具將圖片轉換成C格式的數(shù)組文件即可。下例為顯示字符的程序:


3. 3 滾動顯示畫面

  要實現(xiàn)指定區(qū)域的畫面的滾動顯示效果, 可以通過設置寄存器R75~ R80實現(xiàn), 其中寄存器R75、R76用于設置滾動區(qū)域的起始行; R77、R78設置畫面的范圍, 即要滾動顯示的行數(shù);R79、R80設置每次滾動的行數(shù), 即步長。要注意的是, 步長的設置并不是一勞永逸的, 因為這里的步長是相對于滾屏初始化設置時的狀態(tài)而言的, 并非相對于上一次滾屏動作而言。圖2舉例說明了滾屏的設置及演示效果。

圖2 滾屏的設置及過程演示

  圖2所示過程的C程序如下:

如果按照上述程序調試, 則畫面滾動較快, 效果不明顯。

  實際應用時, 可以結合定時器, 每隔一定時間改變一次寄存器R79、R80的值, 一般是按遞增的等差數(shù)列賦值,可以獲得很好的視覺效果。所賦最大值不能超過319, 因為屏幕最大只有320行; 當所賦值為319, 并且R75、R76所賦值為0時, 可實現(xiàn)全屏畫面的滾動顯示。

  4 結束語

  該顯示系統(tǒng)調試完成后, 通過串口和GPS 模塊連接, 可以實時顯示經(jīng)度、緯度、時間等信號, 顯示效果良好。文中給出的子程序的形參多為2 字節(jié)的整型值, 可直接用于16位、32位單片機, 兼容性強, 為其在便攜式系統(tǒng)中的應用提供了一種方法。



評論


相關推薦

技術專區(qū)

關閉