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

📄 lcd1602.c

📁 一些lcd1602的资料,及我从网上找的源码经自已整理后提取出1602的驱动.
💻 C
字号:
/*-------------------------------------------
      FileName:lcd1602.c
      与同目录的lcd1602.h一起构成lcd1602驱动
	  lcd1602.c为各驱动函数的定义
--------------------------------------------*/
#include"lcd1602.h"

void delay_lcd()
{
   int k=500;
   while(k--);
}

void lcd_write(unsigned int rs, unsigned int lcddata) //rs为COMMAND(即0)写指令, 为ADDR(即1)写数据
{
  RS=rs;
  RW=WRITE;  //写入
  LCDEN = LCD_DISABLE;
  DATA =lcddata;
  delay_lcd();	  //这个delay一定要,看datasheet的时序图
  LCDEN =LCD_EN;
  LCDEN = LCD_DISABLE;	  //这句也一定要加,
}

void Print(unsigned char *str)	//仿C中printf
{
	while(*str!='\0')
	{
		lcd_write(ADDR,*str);
		str++;
	}
}
void GotoXY(unsigned char x, unsigned char y)	  //y为行数,x为列数
{
	if(y==0)
		lcd_write(0,0x80|x);
	if(y==1)
		lcd_write(0,0x80|(x-0x40));
}
void lcd_init()
{
  lcd_write(COMMAND,0x38);  //数据8位,双列字,5*7字型
  lcd_write(COMMAND,0x0c);	//开显示屏,关光标,不闪烁
  lcd_write(COMMAND,0x01);  //清屏
  lcd_write(COMMAND,0x06);  //设定AC递增,屏幕不移动
}
void lcd_clear()
{
  lcd_write(COMMAND,0x01);	//清屏
}

⌨️ 快捷键说明

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