?? lcd_1602_guang.h
字號:
#ifndef LCD_1602_GUANGDIAN
#define LCD_1602_GUANGDIAN
xdata unsigned char CW _at_ 0xf9fc; //液晶控制地址
xdata unsigned char CR _at_ 0xf9fe;
xdata unsigned char DW _at_ 0xf9fd;
xdata unsigned char DR _at_ 0xf9ff;
//unsigned char code dis1[] = {0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0xa0,0x7f,0x2e,0x21,0x3c,0x3e,0x2b,0x2d,0x2a,0x2f,'n'};
//unsigned char code dis2[] = {'0','1','2','3','4','5','6','7','8','9',' ',0x7f,'.','^',0x3c,0x3e,'+','-','*','/','N'};
//unsigned char code dis3[] = {"well"};
//unsigned char count=1;
//unsigned char key; //按鍵值變量
bit flag; //標志位
//-----------------------------------------------
void delay(unsigned int i) //延時
{
while(i--);
}
//-----------------------------------------------
unsigned char lc_read(void) //讀液晶命令
{
unsigned char a;
delay(100);
a=CR;
return(a);
}
//-----------------------------------------------
void readbf(void) //讀液晶忙
{
while(flag)
{
flag=(bit)(lc_read()&0x80);
}
}
//-----------------------------------------------
void lc_write(unsigned char a) //寫液晶命令
{
delay(20);
CW=a;
delay(20);
}
//-----------------------------------------------
void ld_write(unsigned char a) //寫液晶數據
{
delay(20);
DW=a;
delay(20);
}
//-----------------------------------------------
void inttilcs(void) //液晶初始化
{
readbf();
lc_write(0x38);
delay(500);
readbf();
lc_write(0x01);
readbf();
delay(500);
lc_write(0x0c);
readbf();
delay(500);
lc_write(0x06);
delay(500);
}
//-----------------------------------------------
void lc_pos(unsigned char posx,unsigned char posy) //設定顯示位置
{ posx=posx&0xf;
posy=posy&0x1;
lc_write(posx|posy*0x40+0x80); //數據指針=80+地址變量
}
//-------------------------------------------------
void display_char(unsigned char x,unsigned char y,unsigned char ch) //屏幕顯示
{ readbf();
lc_pos(x,y);
ld_write(ch);
}
void lcdclear(void) //清屏
{ readbf();
lc_write(0x01);
}
//--------------------------------------
void display_string(unsigned char x,unsigned char y,unsigned char *string)
//在指定點起顯示一個字符串
{unsigned length;
length=0;
readbf();
while(string[length]!='\0')
{display_char(x,y,string[length++]);
x++;
}
}
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -