張萬里,李國欣
(長春大學 電子信息工程學院,長春 130022)
智能儀器是計算機科學、電子學、數(shù)字信號處理、人工智能、VLSI等新興技術與傳統(tǒng)的儀器儀表技術的結合。隨著微電子技術的發(fā)展,智能儀器將向體積小和功能全的方向發(fā)展。
液晶顯示器是具有體積小、重量輕、微功耗、顯示信息豐富等突出特點,近幾年來被廣泛用于單片機控制的智能儀器、儀表和低功耗電子產品中[1]。本文介紹圖形式液晶顯示器MGLS19264與AT89C51接口及編程的方法,同時給出顯示程序。
MGLS-19264是使用HD61202及其兼容控制驅動器作為列驅動器,同時使用HD61203作為行驅動器的液晶模塊。HD61202及其兼容液晶顯示控制驅動器是一種帶有驅動輸出的圖形液晶顯示控制器,它可直接與8位微處理器相聯(lián),它可與HD61203配合對液晶屏進行行、列驅動。MGLS-19264中共有三片HD61202和一片HD61203。MGLS-19264的內部結構如圖1所示[2]。
圖1 MGLS-19264的內部結構
(1)內藏64×64=4096位顯示RAM,RAM中每位數(shù)據(jù)對應LCD屏上一個點的亮、暗狀態(tài);
(2)HD61202及其兼容控制驅動器是列驅動器,具有64路列驅動輸出;
(3)HD61202及其兼容控制驅動器讀、寫操作時序與68系列微處理器相符,因此它可直接與68系列微處理器接口相聯(lián);
(4)HD61202及其兼容控制驅動器的占空比為1/32-1/64。
(1)VCC:模塊+5V電源輸入端;
(2)GND:地線輸入端;
(3)VO:顯示亮度調節(jié);
(4)/CSA、/CSB:選通組合信號;/CSA/CSB=00選通HD61202(1),即選擇左屏有效;/CSA/CSB=01選通HD61202(2),即選擇中屏有效;/CSA/CSB=10選通HD61202(3),即選擇右屏有效。
(5)E:輸入讀寫使能信號;在E下降沿數(shù)據(jù)被鎖存(寫)入HD61202及其兼容控制驅動器;在E高電平期間數(shù)據(jù)被讀出;
(6)R/W:輸入讀寫選擇信號;R/W=1為讀選通;R/W=0為寫選通;
(7)D/I:輸入數(shù)據(jù)、指令選擇信號;D/I=1為數(shù)據(jù)操作;D/I=0為寫指令或讀狀態(tài);
(8)DB0~DB7:三態(tài)數(shù)據(jù)總線。
HD61202及其兼容控制驅動器的指令系統(tǒng)比較簡單,總共只有七種。現(xiàn)分別介紹如下。
當DB0=1時,LCD顯示RAM中的內容;DB0=0時,關閉顯示。
該指令設置了對應液晶屏最上一行的顯示RAM的行號,有規(guī)律地改變顯示起始行,可以使LCD實現(xiàn)顯示滾屏的效果。
顯示RAM共64行,分8頁,每頁8行。
設置了頁地址和列地址,就唯一確定了顯示RAM中的一個單元,這樣MPU就可以用讀、寫指令讀出該單元中的內容或向該單元寫進一個字節(jié)數(shù)據(jù)。
該指令用來查詢HD61202及其兼容控制驅動器的狀態(tài),各參量含義如下:
BUSY:1-內部在工作;0-正常狀態(tài);
ON/OFF:1-顯示關閉;0-顯示打開;
REST:1-復位狀態(tài);0-正常狀態(tài);
在BUSY和REST狀態(tài)時,除讀狀態(tài)指令外,其它指令均不對HD61202及其兼容控制驅動器產生作用。在對HD61202及其兼容控制驅動器操作之前要查詢BUSY狀態(tài),以確定是否可以對HD61202及其兼容控制驅動器進行操作。
讀、寫數(shù)據(jù)指令每執(zhí)行完一次讀、寫操作,列地址就自動加一。必須注意的是,進行讀操作之前,必須有一次空讀操作,緊接著再讀才會讀出所要讀的單元中的數(shù)據(jù)。
顯示模塊MGLS19264與AT89C51單片機的連接圖如圖2所示。顯示模塊MGLS19264中有數(shù)據(jù)線和控制線,數(shù)據(jù)線直接和AT89C51單片機的數(shù)據(jù)線相連,用89C51單片機的P2.0、P2.1對D/I和R/W進行控制;用P2.2、P2.3對CSA、CSB進行控制。這種連接方式是直接訪問方式[3]。
圖2 顯示模塊MGLS19264與AT89C51單片機的接口
MGLS19264的顯示屏分左屏、中屏和右屏,分別由三片HD61202控制,按照圖2的接口電路,左屏讀狀態(tài)字和數(shù)據(jù)的地址為0200H和0300H,寫入指令和數(shù)據(jù)的地址分別是0000H和0100H,中屏讀狀態(tài)字和數(shù)據(jù)的地址為0A00H和0B00H,寫入指令和數(shù)據(jù)的地址分別是0800H和0900H,右屏讀狀態(tài)字和數(shù)據(jù)的地址為0600H和0700H,寫入指令和數(shù)據(jù)的地址分別是0400H和0500H[4]。
子程序中的COM和DAT分別為數(shù)據(jù)暫存單元和指令暫存單元,這里只給出應用程序的關鍵代碼以供參考。
(1)寫指令代碼子程序(左)
(2)寫顯示數(shù)據(jù)子程序(左)
(3)讀顯示數(shù)據(jù)子程序(左)
MGLS192164型液晶顯示器顯示圖象穩(wěn)定、清晰,而且該LCD具有高性價比的特點,很適合作智能儀器的人機接口。在單片機與液晶的接口中,關鍵是硬件接口電路的連接和軟件的調試。文中所論述的實現(xiàn)字符顯示的方法是以匯編語言為例講述的,根據(jù)其實現(xiàn)的機理,同樣也可采用C51來完成[5]。
[1]林君.智能儀器[M].北京:機械工業(yè)出版社,2010.
[2]北京清華蓬遠公司.內置HD61202控制驅動器圖形液晶顯示模塊使用手冊[Z].1998.
[3]李劍輝,張銳,高輝.點陣式LCD與AT89C51單片機的接口技術[J].信息技術,2003(8):15-18.
[4]李飛.單片機原理及應用[M].西安:西安電子科技大學出版社,2007.
[5]萬隆,巴奉麗.單片機原理及應用技術[M].北京:清華大學出版社,2010.