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

📄 1602.c

📁 字符型液晶显示屏 1602的测试程序 通过本人测试 比较好用
💻 C
字号:
#include<reg51.h>
#include<stdio.h>

#define RW P1_1
#define RS P1_0
#define Enable P1_2
sbit P1_0=P1^0;
sbit P1_1=P1^1;
sbit P1_2=P1^2;

void LcdWriteCommand(char cmd,char attrib);
void Lcd_Ini(void);
void delay(int k);
void LcdWriteData(char character,unsigned char position);
void DelayMs(char num);
unsigned char str[28]={"I love Practical Elctronics!"};
void main(void)
{
 unsigned char i,z;
Lcd_Ini();

 for(z=32;z>-32;z--)
   {
   for(i=0;i<28;i++)
    LcdWriteData(str[i],i+z);
   delay(700);
   }

}
void Lcd_Ini(void)
{
DelayMs(15);
LcdWriteCommand(0x38,0);
DelayMs(5);
LcdWriteCommand(0x38,0);
DelayMs(5);
LcdWriteCommand(0x38,0);
LcdWriteCommand(0x38,1);//MPU DB wide 8 bits,two lines,5*7charater
LcdWriteCommand(0x06,1);//display optic pointer,increase the pointer;
LcdWriteCommand(0x0c,1);//only display the character,no optic pointer
LcdWriteCommand(0x01,1);//clear the screen
}
void LcdWriteCommand(char cmd,char attrib)
{
switch(attrib)
	{
	case 1:P2=0xff;
			RS=0;
			RW=1;
			Enable=1;
			Enable=1;
			while(P2&0x80);
			Enable=0;
	case 0:RS=0;RW=0;P2=cmd;
			Enable=1;Enable=1;Enable=0;break;
	default:break;
	}
}
/*****************************/
/*LCD position & character   */
/*****************************/
void LcdWriteData(char character,unsigned char position)
{
if(position<16)
LcdWriteCommand(position|0x80,1);
else
{
position-=16;
LcdWriteCommand(position|0xc0,1);
}
P2=0xff;RS=0;RW=1;Enable=1;
Enable=1;
while(P2&0x80);
Enable=0;
RS=1;RW=0;
P2=character;
Enable=1;Enable=1;
Enable=0;
}
void delay(int k)
{
   unsigned char j;
   int i;
  for(i=0;i<k;i++)
     for(j=0;j<121;j++);
}
   
void DelayMs(char num)
{
TMOD=0X11;
TR0=0;
TF0=0;
switch(num)
	{
	case 1:TH0=0XfC;TL0=0X18;break;
	case 5:TH0=0XEC;TL0=0X78;break;
	case 15:TH0=0XC5;TL0=0X68;break;
	case 20:TH0=0Xb1;TL0=0Xe0;break;
	case 50:TH0=0X3C;TL0=0XB0;break;
	default: break;
	}
TR0=1;
while(!TF0);
TR0=0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -