⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd_1602.c

📁 多路巡回检测
💻 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 + -