1602.c

来自「自制的 DS1820+51+1602 测量温度的程序 同样适合初学者 了解和」· C语言 代码 · 共 85 行

C
85
字号
#include <reg51.h>
#include "1602.h"

#define uchar unsigned char
/************************延时程序*******************************/
void   Delay100us(uchar n)
{
	while(n)
	{
		uchar  i;
		for(i=0;i<35;i++)
		n--;
		 
	}
}

/**********************************************************/
/********************延时函数可以自定义***********************************
void delay_ms(uint n)
{
 uint i,j;
 for(i=n;i>0;i--)
    for(j=0;j<1140;j++);
    
}
/*********************************************************************/ 

/***********************1602写命令***********************************/
void   SendCommand(uchar command)
{
	RW=WRITE;		 
	RS=COMMAND;
	E=ENABLE;
	LCDIO=command;
	Delay100us(1);
	E=DISABLE;	 
	
}

/**********************向LCD1602发数据************************************/
void   SendData(uchar LCDdata)
{
	RW=WRITE;
	RS=DATA;
	E=ENABLE;
	LCDIO=LCDdata;
	Delay100us(1);
	E=DISABLE;
	
}

/***********************1602初始化程序***********************************/
void   Init1602()
{
	Delay100us(200);
	SendCommand(Clear);
	SendCommand(TwoLine_8bit);
	SendCommand(DispOn);
	SendCommand(CursorRight);

}

/**************************显示字符串程序*********************************/
void   Display(uchar x,uchar y,char *p)      //显示字符串,x为列,y为行显示

{
	SendCommand(0x80+(y-1)*0x40+x-1);
	while(*p)	
	{
		SendData(*p);
		p++;

	}

}

/**************************显示字符程序**********************************/

void   Show(uchar x,uchar y,uchar word)		   //在(x,y)处显示word 
{
	SendCommand(0x80+(y-1)*0x40+x-1);
	SendData(word);

}

⌨️ 快捷键说明

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