一種基于S3C2410A的液晶屏接口設(shè)計(jì)
VO通過電位器R來進(jìn)行液晶屏對比度調(diào)節(jié),VEE負(fù)壓也通過電位器進(jìn)行改變。
液晶顯示模塊的速度相對于S3C24510A CPU較慢,中間用到三片SN74ALS573B鎖存數(shù)據(jù)和控制信息。S3C2410A CPU選取其低8位數(shù)據(jù)線來做為數(shù)據(jù)、命令的發(fā)送端,以及液晶屏數(shù)據(jù)、狀態(tài)的讀入端。這幾類信息均通過SN74ALS573B來連接到LCM19264液晶屏上。
2.2軟件設(shè)計(jì)
2.2.1設(shè)計(jì)分析
LCM192×64型液晶顯示器模塊與S3C2410A CPU模塊的連接采用直接控制方式,其特點(diǎn)是電路簡單,控制時序由軟件實(shí)現(xiàn),可以實(shí)現(xiàn)高速ARM CPU與液晶顯示模塊的接口。
液晶屏的驅(qū)動控制程序軟件包括數(shù)據(jù)傳送、設(shè)置X/Y地址、液晶顯示控制等程序。
數(shù)據(jù)傳送包括初始化和將顯示數(shù)據(jù)發(fā)送到液晶屏的顯示存儲器中。
設(shè)置X/Y地址包括設(shè)置顯示起始行、設(shè)置頁面地址(即X地址)、設(shè)置Y地址。
液晶顯示控制等程序包括顯示開關(guān)控制、讀取液晶屏狀態(tài)以及讀取顯示數(shù)據(jù)等。
因此,要使液晶屏正常顯示,主要實(shí)現(xiàn)兩個功能,一個是向與寫指令和寫數(shù)據(jù)相對應(yīng)的I/O端口地址,寫入控制液晶屏工作的指令代碼和所要顯示的內(nèi)容的編碼。另一個就是要用程序來控制實(shí)現(xiàn)KS0107的讀寫時序[5],尤其是控制管腳E的高低電平持續(xù)時間產(chǎn)生液晶顯示所需的寫時序。KS0107寫操作的工作時序如圖3。
借助坐標(biāo)設(shè)置指令可以對所要顯示的圖形進(jìn)行準(zhǔn)確的定位。KS0107有兩個常用指令用于設(shè)置光標(biāo)的X(行)方向坐標(biāo)、Y(列)方向坐標(biāo)。光標(biāo)出現(xiàn)的位置由0XB8(0~3比特位有效)和0x40(0~ 6比特位有效)分別加上一定的地址偏移量決定的。原則上在寫數(shù)據(jù),顯示一行圖形的過程中,X(行)坐標(biāo)保持不變,Y(列)坐標(biāo)會自動循環(huán)加1,這樣對于靜態(tài)圖形的顯示,由于只需考慮行坐標(biāo),就很方便,但如果要動態(tài)顯示各種文字圖形,它的編程效率就不是很高。最好對X,Y向的地址偏移量都進(jìn)行人為的設(shè)置,就可以精確控制圖像出現(xiàn)的位置。
[0XB8+(disp_x(屏幕坐標(biāo)))]→X(行)向的物理坐標(biāo)
[0XB8+(disp_y(屏幕坐標(biāo)))]→Y(列)向的物理坐標(biāo)
disp_x表示X(行)向的地址偏移量,取值范圍為0~7,也即代表顯示屏上的8行;disp_y表示Y(列)向的地址偏移量,取值范圍為0~63,也即代表顯示屏上的64列;當(dāng)然在開始顯示圖形之前,由0X3F打開顯示,此外還要存入所要顯示圖形的編碼。
pos機(jī)相關(guān)文章:pos機(jī)原理
評論