/*
字元從最右邊往左移動16次,最後停止在螢幕上
*/#include
#define uchar unsigned char
#define uint unsigned int
uchar code display="talk is cheap";
uchar code display1="show me code";
sbit lcde=p2^7;
//定義p2^7口為液晶使能端
sbit rs=p2^6;
//資料/命令選擇端(h/l)
sbit rw=p2^5;
//讀/寫選擇端(h/l)
void delay(uint z);
//延時函式的宣告
void inint();
//初始化函式宣告
void lcdwritecom(uchar com);//寫命令函式宣告
void lcdwritedata(uchar dat);//寫資料函式宣告
void inint() //lcd初始化設定(這些設定都是連在一起的)
void lcdwritecom(uchar com)
//寫命令函式
void lcdwritedata(uchar date)
//寫資料函式
void main()
lcdwritecom(0x80+0x50);
//寫命令(第二行),最右邊
for(i=0;i<12;i++) //7個字元(空格也算乙個字元)
for(i=0;i<29;i++)
while(1);
}void delay(uint z)//延時zms函式
/*希望達成的功能是字元的滾動顯示*/
/*#include
#define uchar unsigned char
#define uint unsigned int
uchar code display="talk is cheap";
uchar code display1="show me code";
sbit lcde=p2^7;
//定義p2^7口為液晶使能端
sbit rs=p2^6;
//資料/命令選擇端(h/l)
sbit rw=p2^5;
//讀/寫選擇端(h/l)
void delay(uint z);
//延時函式的宣告
void inint();
//初始化函式宣告
void lcdwritecom(uchar com);//寫命令函式宣告
void lcdwritedata(uchar dat);//寫資料函式宣告
void inint() //lcd初始化設定(這些設定都是連在一起的)
void lcdwritecom(uchar com)
//寫命令函式
void lcdwritedata(uchar date)
//寫資料函式
void main()
lcdwritecom(0x80+0x50);
//寫命令(第二行),最右邊
for(i=0;i<12;i++) //7個字元(空格也算乙個字元)
// lcdwritecom(0x07);//整屏移動指令,與lcdwritecom(0x18)一樣的作用
}while(1)
lcdwritecom(0x80+0x40);
//寫命令(第二行),最右邊
for(i=0;i<7;i++) //7個字元(空格也算乙個字元)}}
void delay(uint z)//延時zms函式
*/
LCD1602顯示中文漢字
小子在 2011 11 25編寫 特別說明筆者是上面的作者,感謝那些原意分享知識的人。時隔5年我又看到了筆者當年寫的東西,我想這期間還有許許多多的人 今天寫在部落格上,願更多後來者可以學習。lcd1602顯示中文漢字 lcd1602相比大家都比較了解,但是我們一般只用來顯示字元,數字。最近在網上看許...
LCD1602液晶顯示
include define uchar unsigned char define uint unsigned int define lcd data p0 定義資料線d0 d7 sbit lcd rs p1 0 定義暫存器選擇位 sbit lcd rw p1 1 定義讀寫訊號線位 sbit lcd...
lcd1602液晶顯示
概括 p0用於在e的下降沿時輸出資料到lcd1602中,在此之前,需要寫入命令對lcd進行一些初始化,輸入命令和資料都通過p0,經過下降沿傳送,不同點在於輸入資料時rs 1,輸入命令時rs 0 如下 include typedef unsigned int u16 typedef unsigned ...