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

📄 lcd1602.h

📁 PIC单片机驱动1602液晶屏的C程序。
💻 H
字号:
/*********************************************************************
 *
 *                           LCD1602.H
 *
 *********************************************************************
 * 文件名: LCD1602.H
 * 描述: 
 *
 * 作者              		日期         			注释
 *~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 * liuyun					08/04/01				原始文件
 ********************************************************************/
#ifndef __LCD1602_H
#define __LCD1602_H


/*单片机与LCD1602连接数据线定义*/
#define LCD_DATA      PORTD
#define TRIS_LCD_DATA TRISD
#define LCD_BUSY     RD7


#define LCD_RS         RA1   		/* PORT for RS */
#define TRIS_LCD_RS    TRISA1   	/* TRIS for RS */

#define LCD_RW         RA2   		/* PORT for RW */
#define TRIS_LCD_RW    TRISA1    	/* TRIS for RW */

#define LCD_EN         RA3   		/* PORT for EN */
#define TRIS_LCD_EN    TRISA3    	/* TRIS for EN */


/*-------------------1602液晶命令定义-------------------*/

/*初始化命令*/
#define DISP_CLR			0b00000001	/*清显示,光标复位到第一行首(地址00H)*/
#define CUR_HOME			0b00000010	/*光标复位,光标返回到第一行首*/

/*光标和显示模式设置*/
#define CUR_AUTO_R			0b00000110	/*设置光标在文字插入后自动右移*/
#define CUR_AUTO_L			0b00000100	/*设置光标在文字插入后自动左移*/
#define DISP_AUTO_R		    0b00000111 	/*设置显示在文字插入后自动右移*/
#define DISP_AUTO_L		    0x00000101 	/*设置显示在文字插入后自动左移*/

/*显示开关控制*/
#define DISP_ON			    0b00001111	/*显示开*/
#define DISP_OFF			0b00001011	/*显示关*/
#define CUR_ON			    0b00001111	/*光标开*/
#define CUR_OFF			    0b00001101	/*光标关*/
#define BLINK_ON			0b00001111	/*光标闪烁开*/
#define BLINK_OFF			0b00001110	/*光标闪烁关*/

/*光标或显示移位*/
#define CUR_SHIFT_L		    0b00010000	/*光标左移*/
#define CUR_SHIFT_R		    0b00010100	/*光标右移*/
#define DISP_SHIFT_L		0b00011000	/*显示左移*/
#define DISP_SHIFT_R		0b00011100	/*显示右移*/


/*工作模式设置*/
#define LCD_MODE_STD		0x38		/*1602标准工作模式:8位数据传送,2行显示,字符点阵5*7*/


/*字符发生器RAM地址设置*/
#define SET_ADDR_CGRAM			0x40	/*设置CGRAM地址*/

/*数据存储器地址设置*/
#define SET_ADDR_DDRAM			0x80	/*设置DDRAM地址*/

/*自定义字符*/
#define USER_CHAR1				0x00/*自定义字符1:年*/
#define USER_CHAR2				0x01/*自定义字符2:月*/
#define USER_CHAR3				0x02/*自定义字符3:日*/
#define USER_CHAR4				0x03/*自定义字符4:¥*/
#define USER_CHAR5				0x04/*自定义字符5:元*/
#define USER_CHAR6				0x05/*自定义字符6:℃*/
#define USER_CHAR7				0x06/*自定义字符7:↑*/
#define USER_CHAR8				0x07/*自定义字符8:小喇叭图标*/

/* 函数原型*/
void LCD_init(void)			;/*初始化*/
void wait_until_LCDready(void)	;/*检测忙标志,忙则等待*/
void LCD_wrcmd(unsigned char cmd)		;/*写入控制命令*/
void LCD_setxy(char x,char y)	;/*设定显示位置,行x=1/2,列y=1~16的任意整数*/
void LCD_wrchar(char str)		;/*写入要显示的字符*/
void LCD_wrstr(char *s);/*写入要显示的字符串常量,该函数相当于C18 库中的putrsXLCD函数,从程序存储器写一个字符串到LCD*/
void LCD_wrul(unsigned long num);/*写入要显示的无符号长整型数*/
void LCD_wrlval(unsigned long num,unsigned char bits,unsigned char dp);/*写入要显示的长变量*/
void CG_Write(void);/*建立自定义字符块*/


#endif

⌨️ 快捷键说明

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