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

📄 lcd1602_4.h

📁 鼠标的单片机驱动程序 把鼠标的四条线接在89c52 上把程序编译好后下载进去 就可使用。但要看好接口。
💻 H
字号:
//**********************液晶1602驱动*********************
#ifndef	LCD1602_H
#define LCD1602_H

#define cmd			0      // 写命令标识
#define dat			1      // 写数据标识

#define uint unsigned int
#define uchar unsigned char
 
void aDelayms(unsigned char count)  //延时
{
	unsigned char i;//,j;
	for(i=0;i<count;i++);
	//for(j=0;j<120;j++);
}		 

//端口设定**********************************************************
sbit LcdRs	= P2^2;
sbit LcdRw		= P2^4;	//不读液晶该端口接地即可
sbit LcdEn  	= P2^6;
sfr  DBPort 	= 0x80;		//P0=0x80,P1=0x90,P2=0xA0,P3=0xB0.数据端口

//写入LCD一字节程序*****************************************************
void LCD_Write(bit style, unsigned char input)
{
	DBPort=input;
	LcdRs=style;
	//LcdEn=0;	//这句实际是句空操作
	LcdEn=1;
	//aDelayms(1);
	LcdEn=0;
	aDelayms(80);
}//**********************************************************************/


//初始化LCD************************************************************
void LCD_Initial()
{
	LcdRw=0;
	LcdEn=0; aDelayms(50);
	LCD_Write(cmd,0x38);
	aDelayms(50);
	LCD_Write(cmd,0x38);
	aDelayms(50);
	LCD_Write(cmd,0x0c);	//开LCD并设置为不显示光标
	LCD_Write(cmd,0x06);	//光标自动移动到下一位设置
	LCD_Write(cmd,0x01);	//清屏
	LCD_Write(cmd,0x80);	//光标定位
}

//更改光标位置函数************************************************************
void GotoXY(unsigned char x, unsigned char y)
{
	if(y==0)
		LCD_Write(cmd,0x80|x);
	if(y==1)
		LCD_Write(cmd,0x80|(x-0x40));
}

//显示数组里内容的程序********************************************************
void Print(unsigned char *str)
{
	while(*str!='\0')
	{
		LCD_Write(dat,*str);
		str++;
	}
}
void LCM1602_write_string(unsigned char X, unsigned char Y, unsigned char *DData)
{

GotoXY(X,Y);
Print(DData);
}

void num(unsigned char x,unsigned char y,unsigned long date,unsigned long date2)
{
	unsigned char g,s,b,q;
	q=(date%10000)/1000;
	b=(date%1000)/100;
	s=(date%100)/10;
	g=date%10;
	GotoXY(x,y);
	LCD_Write(dat,0x30+q);
	LCD_Write(dat,0x30+b);
	LCD_Write(dat,0x30+s);
	LCD_Write(dat,0x30+g);
	LCD_Write(dat,'*');
	q=(date2%10000)/1000;
	b=(date2%1000)/100;
	s=(date2%100)/10;
	g=date2%10;
	LCD_Write(dat,0x30+q);
	LCD_Write(dat,0x30+b);
	LCD_Write(dat,0x30+s);
	LCD_Write(dat,0x30+g);

}

#endif

⌨️ 快捷键说明

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