?? 1602lcd_yd.c.bak
字號:
_nop_();
_nop_();
LCD_EN = 1;
_nop_();
_nop_();
_nop_();
_nop_();
LCD_EN = 0;
}
/*******************************************************************/
/*
/* 設定顯示位置
/*
/*******************************************************************/
void lcd_pos(uchar pos)
{
lcd_wcmd(pos|0x80); //數據指針=80+地址變量
}
/*******************************************************************/
/*
/* LCD初始化設定
/*
/*******************************************************************/
void lcd_init()
{
delay(15); //等待LCD電源穩定
lcd_wcmd(0x38); //16*2顯示,5*7點陣,8位數據
delay(5);
lcd_wcmd(0x38);
delay(5);
lcd_wcmd(0x38);
delay(5);
lcd_wcmd(0x0c); //顯示開,關光標
delay(5);
lcd_wcmd(0x06); //移動光標
delay(5);
lcd_wcmd(0x01); //清除LCD的顯示內容
delay(5);
}
/*******************************************************************/
/*
/* 清屏子程序
/*
/*******************************************************************/
void lcd_clr()
{
lcd_wcmd(0x01); //清除LCD的顯示內容
delay(5);
}
/*******************************************************************/
/*
/* 閃動子程序
/*
/*******************************************************************/
void flash()
{
delay(600); //控制停留時間
lcd_wcmd(0x08); //關閉顯示
delay(200); //延時
lcd_wcmd(0x0c); //開顯示
delay(200);
lcd_wcmd(0x08); //關閉顯示
delay(200); //延時
lcd_wcmd(0x0c); //開顯示
delay(200);
}
/*******************************************************************/
/*
/* 主程序
/*
/*******************************************************************/
main()
{
uchar i,j;
delay(10);
lcd_init(); //初始化LCD
while(1)
{
lcd_clr();
lcd_pos(0x10); //設置顯示位置為第一行第17列
i = 0;
while(dis1[i] != '\0')
{ //顯示字符" CHINESE "
lcd_wdat(dis1[i]);
i++;
}
lcd_pos(0x50); //設置顯示位置為第二行第17列
i = 0;
while(dis2[i] != '\0')
{
lcd_wdat(dis2[i]); //顯示字符" NEW YEAR "
i++;
}
for(j=0;j<16;j++) / /向左移動16格
{
lcd_wcmd(0x18); //字符同時左移一格
delay(100); //控制移動時間
}
flash(); //閃動二次
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -