12864點(diǎn)陣液晶顯示模塊與51單片機(jī)的接口及程序設(shè)計(jì)
管腳號(hào) | 管腳名稱 |
1 | VSS |
2 | VDD |
3 | NC |
4 | RS(CS) |
5 | R/W(SID) |
6 | E(SCLK) |
7-14 | DB0—7 |
15 | PSB |
16 | NC |
17 | RST |
18 | NC |
19 | BLA |
20 | BLK |
圖2 AT89S52和液晶LM3033B-0BR3模塊的接口電路及LM3033B-0BR3引腳功能
3 液晶顯示C51程序設(shè)計(jì)
對(duì)LM3033B-0BR3的軟件編程采用Medwin語(yǔ)言開發(fā),主要包括兩部分,一部分是給液晶寫指令,另一部分是給液晶寫數(shù)據(jù)。有了這2個(gè)基本的子程序,就可以構(gòu)造出各種實(shí)用的顯示子程序。由于液晶內(nèi)部自帶漢字模塊,只需發(fā)送漢字對(duì)應(yīng)的代碼就可以實(shí)現(xiàn)漢字的顯示,其代碼可以在ST7920模塊的資料中查找。對(duì)于圖形和曲線顯示的原理類似,只需要設(shè)置好相應(yīng)的水平地址和垂直地址,并把相應(yīng)的圖形編碼寫入液晶模塊,就可顯示出所要顯示的內(nèi)容。
寫命令到LCD:
void WRCMD(uchar cmdcode)
{
chk_busy();
RS=0;
RW =0;
E=1;
lcd_bus=cmdcode;
E=0;
)
寫數(shù)據(jù)到LCD:
void WRData(uchar Dispdata)
{
chk_busy();
RS=1;
RW =0;
E=1;
lcd_bus=Dispdata;
E=0;
)
初始化程序:
void Init()
{
RES=1;
RES=0;
delay(1);
RES=1;
delay(1);
WRCMD(Ox30); //選擇8位并行W
RCMD(Ox30); //選擇8位并行
WRCMD(OxOc);//開顯示(無(wú)游標(biāo)、不反白)
WRCMD(0x01);//清除顯示
WRCMD(Ox04); //shift=0,AC加1
在單片機(jī)與液晶的接口中,關(guān)鍵是要滿足液晶的時(shí)序要求;在軟件編程中,關(guān)鍵是要進(jìn)行正確的初始化、操作及寫入顯示內(nèi)容的代碼。以上接口電路和相應(yīng)的程序已經(jīng)通過(guò)調(diào)試,并在實(shí)際中得到應(yīng)用。由ST7920構(gòu)成的LM3033B-0BR3液晶顯示模塊與同類型的圖形點(diǎn)陣液晶顯示模塊相比,不論硬件電路結(jié)構(gòu)或顯示程序都要簡(jiǎn)潔得多。因此,LM3033B-0BR3液晶顯示模塊將得到廣泛的應(yīng)用。
51單片機(jī)相關(guān)文章:51單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)教程
單片機(jī)相關(guān)文章:單片機(jī)視頻教程
單片機(jī)相關(guān)文章:單片機(jī)工作原理
led顯示器相關(guān)文章:led顯示器原理
評(píng)論