DSP是一種適合于數字信號處理的實時高速的高性能微處理器,已廣泛應用于自動控制、圖像處理、通信技術、網絡設備、儀器、儀表和家電領域。液晶顯示屏以其顯示直觀、便于操作的特點被用作各種便攜式系統的顯示終端。傳統液晶大多用單片機控制,而單片機的數字信號處理能力遠低于DSP芯片,使得其應用范圍受到限制。基于此,本文選用TOPWAY公司生產的、以ST7920為控制芯片的128×64點陣3.3V簡體中文字庫的LM3303A-B型圖形液晶,介紹了一種基于DSP和ST7920的液晶顯示屏的設計。 1 ST7920控制器介紹 LM3303A-B型液晶顯示屏是香港TOPWAY公司采用臺灣銘創電子公司生產的ST7920控制器的液晶顯示屏。它由128×64點陣構成、接口方便(3.3V)、設計簡單、功耗低、價格便宜,可用于各種設備的顯示終端。 ST7920支持8位、4位并行或2線、3線串行兩種接口方式,帶有ZMB的中文字型CGROM,該字庫ROM中含有8192個16×16點陣的中文字型,可利用代碼簡單方便地顯示漢字。16KB的半寬字型HCGROM,提供了126個168點陣的ASCII字符庫,便于英文和其他常用字符顯示。64×16位元的字型產生CGRAM,用戶可以根據需要構造生僻字。64×26位元的繪圖GDRAM,方便構造圖形?刂破骶哂欣L圖及文字畫面混合顯示功能。另外,控制器提供基本指令與擴充指令命令,功能強大。 2 DSP與液晶顯示屏硬件接口設計 由于LM3303A-B具有串/并行多種接口方式,針對DSP外圍I/O豐富且處理速度快的特點選用8位并行的接口方式,這種方式下雖然接線多,但是速度比串行要快得多,所以將PSB引腳接高電平。 DSP 與LM3303A-B之間的接口電路如圖1所示。由于LM3033A-B是3.3V簡體中文圖形液晶,所以DSP與液晶之間不用電平轉換。其中DSP 的IOPE0~IOPE7用作數據接口,與LCD模塊的數據線DB0~DB7相連,完成與LM3303A-B 間的數據傳送;IOPF0與RS相連,決定是數據(RS=0)還是命令(RS=1);IOPF1與R/W相連,決定是寫入(RW=0)還是讀出(RW=1); IOPF2與E相連,工作狀態使能。IOPD0與/RST相連用于復位。VDD接+3.3V輸入電源。A與K引腳間的電壓為顯示屏內部發光二極管提供電壓,使其產生背光;參考文獻中要求調節顯示屏的對比度是在V0與VOUT之間串接一個電位器,但在實際應用中無法實現,而是采用V0直接接+5V的上拉電阻且空出VOUT,可以有效地調節顯示對比度。 3 DSP控制液晶顯示屏的軟件設計 從程序的可移植性和通用性方面考慮,選擇C語言進行軟件模塊的設計實現。這里通過液晶顯示屏的初始化過程以及如何顯示文本和一幅圖畫來具體說明DSP控制液晶顯示屏的軟件設計。 3.1 軟件設計程序流程 DSP要控制液晶顯示屏系統運行,首先應將系統接通電源,系統自動復位。復位后進行系統初始化、液晶初始化。在初始化完畢后,系統可以通過控制器發出的指令調用相關函數,完成相應的顯示功能。其主程序流程圖如圖2所示。 3.2 系統及液晶初始化 系統初始化禁止所有可屏蔽中斷,并關總中斷,在進行關鍵設置時不允許發生中斷,以免產生干擾。允許符號位擴展,將B0配置為數據存儲空間。設置IOPE0"IOPE7為LCD數據接口。 液晶初始化需首先進行復位清屏,如果液晶顯示屏正常工作,便可寫命令到LCD。其中用到用戶定義的函數LCD_WriteCommand(uchar cmdcode)和函數LCD_Busy(),其作用分別為寫命令到LCD和判斷ST7920內部是否處于忙碌狀態。這里值得注意的是,當ST7920在接受指令前,DSP必須先確認ST7920內部處于非忙碌狀態,即讀取BF標志位時BF需為0,方可接受新的指令。 3.3 ST7920的讀寫時序 在軟件設計過程中,只有產生符合ST7920的讀寫時序后才能對液晶正確操作,否則液晶顯示屏不會有任何輸出。 本系統中的DSP主頻為30MHz,相對而言,液晶屬于慢速的外設,所以在讀寫子程序中應該插入一些延時等待。根據圖3和圖4中的時序圖可以編寫以下讀寫子程序(其中為了提高程序的可移植性與可讀性,在程序開頭都用了宏定義,限于篇幅在此不再給出): 3.4 液晶顯示程序設計 液晶初始化完成后,可調用函數void dis_txt()進行文本的寫入與顯示。詳細代碼如下(其中函數void dis_hz(char*s)用來顯示字符串): 液晶顯示屏顯示圖片,調用void Disp_Img(uchar*img)函數,先完成地址歸位和清屏等相關工作,其后的關鍵功能代碼實現如下: 本文對基于DSP和ST7920液晶顯示模塊的實現方法進行了探討,對顯示模塊ST7920進行了有效的控制, 所應用程序均在TMS320LF240x系列的軟件編譯環境CCS V2.0下調試通過。液晶顯示屏能夠正常顯示連續的漢字、字符以及圖形,性能穩定。與同類型的其他圖形點陣液晶顯示模塊相比,其硬件電路結構簡單、方式靈活、對于其他型號的接口芯片也有參考價值。該顯示模塊能夠應用于工程機械上。 |