?? lcd_1602.c
字號(hào):
#include<reg51.h>
sbit RS=P2^0;
sbit RW=P2^1;
sbit EN=P2^2;
unsigned char code str1[]={"i love you "};
unsigned char code str2[]={" "};
/*************************lcd1602程序**************************/
void Delay1ms(unsigned int ms)//延時(shí)1毫秒(不夠精確的)
{
unsigned int i,j;
for(i=0;i<ms;i++)
for(j=0;j<100;j++);
}
void Wr_Com(unsigned char com)//寫指令//
{
Delay1ms(1);
RS=0;
RW=0;
EN=0;
P1=com;
Delay1ms(1);
EN=1;
Delay1ms(1);
EN=0;
}
void Wr_Dat(unsigned char dat)//寫數(shù)據(jù)//
{
Delay1ms(1);
RS=1;
RW=0;
EN=0;
P1=dat;
Delay1ms(1);
EN=1;
Delay1ms(1);
EN=0;
}
void Lcd_Init()//初始化設(shè)置//
{
Delay1ms(15);
Wr_Com(0x38);Delay1ms(5);//顯示模式設(shè)置
Wr_Com(0x08);Delay1ms(5);//關(guān)顯示,不顯示光標(biāo)
Wr_Com(0x01);Delay1ms(5);//清屏
Wr_Com(0x06);Delay1ms(5);//顯示光標(biāo)移動(dòng)設(shè)置
Wr_Com(0x0c);Delay1ms(5);//顯示開及光標(biāo)設(shè)置
}
void Lcd_Dis_Char(unsigned char addr,unsigned char c)
{
Wr_Com(addr);
Wr_Dat(c);
}
void Lcd_Dis_String(unsigned char addr,unsigned char *p)//顯示//
{
Wr_Com(addr);
while(*p!='\0')
{
Wr_Dat(*p);
p++;
//Delay1ms(1);
}
}
void Init_Dis()//初始化顯示
{
Lcd_Init();
Lcd_Dis_String(0x80,str1);//0x80是第一行的起始地址
Lcd_Dis_String(0xc0,str2);//0xco是第二行的起始地址
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -