📄 lcd1602.h
字号:
#ifndef LCD1602_2005_3_14
#define LCD1602_2005_3_14
#include <intrins.h>
#define BYTE unsigned char
#define WORD unsigned int
#define uchar unsigned char
#define uint unsigned int
/* 液晶管脚连线 */
// #defin
#define DataPort P0
sbit LCDRS = P1^0; // 寄存器选择 1:数据;0:指令
sbit LCDRW = P1^1; // 读写操作选择 1:读;0:写
sbit LCDE = P1^2; // 使能信号
sbit BUSY = ACC^7; // 忙标志位(非管脚)
void LCDDelay(WORD count); // 时间延迟
BYTE Wait(); // 等待函数
void WriteLCD(BYTE style, BYTE input); // 向LCD写入命令或数据
/* style取值 */
#define COMMAND 0 // 指令操作
#define DATA 1 // 数据操作
/* 衍生的函数 */
#define PutChar(x) WriteLCD(DATA,x)
void PrintString(uchar X,uchar Y,uchar *str); // 显示字符串
void ClearScreen(); // 清DDRAM和AC值
#define CLEAR_SCREEN 0x01 // 清屏
void BackHome(); // AC=0,光标和画面回HOME位置
#define HOMING 0x02 // 光标返回原点
void SetDisplay(BYTE DisplayMode); // 设置显示模式
/************* DisplayMode ***************/
#define SHOW 0x04
#define HIDE 0x00 // default
#define CURSOR 0x02
#define NO_CURSOR 0x00 // default
#define FLASH 0x01 // 光标闪动
#define NO_FLASH 0x00 // default
/*********** End DisplayMode *************/
void SetInput(BYTE InputMode); // 设置输入模式
/************** InputMode ****************/
#define AC_UP 0x02
#define AC_DOWN 0x00 // default
#define MOVE 0x01 // 画面可平移
#define NO_MOVE 0x00 //default
/************ End InputMode **************/
// void Move(BYTE object, BYTE direction); // 移动光标或屏幕
/* object */
// #define CURSOR 0x02 // 光标平移
// #define SCREEN 0x08 // 画面平移
/* direction */
// #define LEFT 0x00 // 左移
// #define RIGHT 0x04 // 右移
void SetFunction(BYTE FUNCTION); // 功能设置
/************ FUNCTION SET ****************/
#define EIGHT 0x10 // 8位数据接口
#define FOUR 0x00 // 4位数据接口
#define DOUBLE 0x08 // 两行显示
#define ALONE 0x00 // 一行显示
#define LARGE 0x04 // 5*10点阵显示
#define SMALL 0x00 // 5*7点阵显示
/************** END FUNCTION ****************/
void GotoXY(BYTE X, BYTE Y); // 跳到LCD的某个坐标点
void LCD_Initial(); // 液晶初始化函
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -