lcd1602.c

来自「1602LCD显示c51」· C语言 代码 · 共 72 行

C
72
字号
#include <AT89X51.H>
#define uchar unsigned char
#define uint unsigned int
sbit	lcdrs=P3^0;
sbit	lcdrw=P3^1;
sbit	lcden=P3^2;
	
void delayms(uint count)
{
	uint i,j;
	for(i=0;i<count;i++)
	for(j=0;j<110;j++);
}
void lcdwc(uchar com)
{
	lcdrs=0;
	P0=com;
	lcdrw=0;
	delayms(1);
	lcden=1;
	delayms(1);
	lcden=0;
}
void lcdwd(uchar date)
{
	lcdrs=1;
	P0=date;
	lcdrw=0;
	delayms(1);
	lcden=1;
	delayms(1);
	lcden=0;
}
void initlcd()
{
	delayms(1);
	lcdwc(0x38);
	lcdwc(0x0f);
}
void lcdshow(uchar spr,uchar hang,uchar lie)
{
	if(hang==1)
	{
	 	lcdwc(0x80+lie);
		lcdwd(spr);
	}
	else
	{
		lcdwc(0x80+0x40+lie);
		lcdwd(spr);
	}
}
main()
{  	uchar i;
	uchar a[]="   ( O __ O )   ";
	uchar b[]={'A','1',0x20,65,49,0x20,0x41,0x31};	  //字符、ASCII、液晶字库
	
	initlcd();	
	for(i=0;i<16;i++)
	{
		lcdshow(a[i],1,i);
	}
		
	for(i=0;i<8;i++)
	{
		lcdshow(b[i],2,i);
	} 
	
	while(1)	
	{
	}
}

⌨️ 快捷键说明

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