📄 lcd_1602.c
字号:
#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)//延时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)//写数据//
{
Delay1ms(1);
RS=1;
RW=0;
EN=0;
P1=dat;
Delay1ms(1);
EN=1;
Delay1ms(1);
EN=0;
}
void Lcd_Init()//初始化设置//
{
Delay1ms(15);
Wr_Com(0x38);Delay1ms(5);//显示模式设置
Wr_Com(0x08);Delay1ms(5);//关显示,不显示光标
Wr_Com(0x01);Delay1ms(5);//清屏
Wr_Com(0x06);Delay1ms(5);//显示光标移动设置
Wr_Com(0x0c);Delay1ms(5);//显示开及光标设置
}
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是第二行的起始地址
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -