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

📄 lcd1602.h

📁 一个数字显示时钟的程序
💻 H
字号:


#ifndef LCD_CHAR_1602_2008_5_9
#define LCD_CHAR_1602_2008_5_9

#include <intrins.h>


sbit LcdRs	= P2^0;
sbit LcdRw	= P2^1;
sbit LcdEn  	= P2^2;
sfr  DBPort 	= 0x80;	
#define LCD_AC_UP			0x02
#define LCD_AC_DOWN			0x00     

#define LCD_MOVE			0x01      
#define LCD_NO_MOVE			0x00   	
#define LCD_SHOW			0x04    
#define LCD_HIDE			0x00   

#define LCD_CURSOR			0x02 	
#define LCD_NO_CURSOR			0x00    		     

#define LCD_FLASH			0x01    
#define LCD_NO_FLASH			0x00 
#define LCD_COMMAND			0      
#define LCD_DATA			1      
#define LCD_CLEAR_SCREEN	0x01      
#define LCD_HOMING  		0x02     


unsigned char LCD_Wait(void)
{
	LcdRs=0;
	LcdRw=1;	_nop_();
	LcdEn=1;	_nop_();

	LcdEn=0;
	return DBPort;		
}

    
void LCD_Write(bit style, unsigned char input)
{
	LcdEn=0;
	LcdRs=style;
	LcdRw=0;		_nop_();
	DBPort=input;	_nop_();
	LcdEn=1;		_nop_();
	LcdEn=0;		_nop_();
	LCD_Wait();	
}




void LCD_SetDisplay(unsigned char DisplayMode)
{
	LCD_Write(LCD_COMMAND, 0x08|DisplayMode);	
}


   

void LCD_SetInput(unsigned char InputMode)
{
	LCD_Write(LCD_COMMAND, 0x04|InputMode);
}




void Lcd_Initial()
{
	LcdEn=0;
	LCD_Write(LCD_COMMAND,0x38);           
	LCD_Write(LCD_COMMAND,0x38);
	LCD_SetDisplay(LCD_SHOW|LCD_NO_CURSOR);    
	LCD_Write(LCD_COMMAND,LCD_CLEAR_SCREEN);   
	LCD_SetInput(LCD_AC_UP|LCD_NO_MOVE);       
}


void Gotoxy(unsigned char x, unsigned char y)
{
	if(y==0)
		LCD_Write(LCD_COMMAND,0x80|x);
	if(y==1)
		LCD_Write(LCD_COMMAND,0x80|(x-0x40));
}
void Print(unsigned char *str)
{
	while(*str!='\0')
	{
		LCD_Write(LCD_DATA,*str);
		str++;
	}
}

#endif

⌨️ 快捷键说明

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