新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 單片機(jī)學(xué)習(xí)——lcd1602顯示實(shí)驗(yàn)之一

單片機(jī)學(xué)習(xí)——lcd1602顯示實(shí)驗(yàn)之一

作者: 時(shí)間:2016-11-23 來(lái)源:網(wǎng)絡(luò) 收藏
題目:在lcd1602顯示屏上顯示出

   “I LIKE MCU!

本文引用地址:http://m.butianyuan.cn/article/201611/320189.htm

       XIAO?。祝铡 ?rdquo;

   且顯示方式為從右邊屏依次向左動(dòng)態(tài)移出。

解決方案:(c語(yǔ)言編程)

#include
#define uchar unsigned char
#define uint unsigned int
uchar code table[]="I LIKE MCU!";
uchar code table1[]="XIAO WU" ;
sbit lcdrs=P1^7;
sbit lcdrw=P1^6;
sbit lcde=P2^4;
sbit le=P3^6;
sbit leden=P2^5;
sbit dkle=P3^7;
void delay(uint a) ;
uchar num;

void write_com(uchar com)  //寫入命令子函數(shù)
{
lcde=0;
lcdrw=0;
lcdrs=0;
delay(1);
lcde=1;
delay(1);
P0=com;
delay(1);
lcde=0;
}
void write_data(uchar dat) //寫入數(shù)據(jù)子函數(shù)
{
lcde=0;
lcdrw=0;
lcdrs=1;
delay(1);
lcde=1;
delay(1);
P0=dat;
delay(1);
lcde=0;
}
void init()  //初始化子函數(shù)
{
lcde=0;
le=0;
leden=0;
write_com(0x38);
write_com(0x0f);
write_com(0x01);
write_com(0x80+0x10);

}
void main()  //主函數(shù)
{
init();
for(num=0;num<11;num++) //寫入第一行
{
write_data(table[num]);
delay(1);
}
write_com(0x80+0x40+4+0x10);
for(num=0;num<7;num++)//寫入第二行
{
write_data(table1[num]);
delay(1);
}
for(num=0;num<16;num++)  //向左動(dòng)態(tài)左移
{
write_com(0x18);
delay(10);
}
while(1) ;
}

void delay(uint a) {  //延時(shí)函數(shù)
uint i,j;
for(j=a;j>0;j--)
for(i=2500;i>0;i--) ;
}



評(píng)論


技術(shù)專區(qū)

關(guān)閉