📄 fyd12864.h
字号:
#ifndef _FYD12864_H_
#define _FYD12864_H_
#define uint unsigned int
#define uchar unsigned char
sbit PinRS = P2^0;
sbit PinRW = P2^1;
sbit PinRST = P2^3;
sbit PinE = P2^2;
#define PinData P0
// 函数功能:数据口输入输出控制
void InitP0(bit i);
// 函数功能:短延时
void ShortDelay(uchar i);
// 函数功能:长延时
void LongDelay(uint i);
// 函数功能:指令/数据选择
// i=1,数据;i=0,指令
void SetLCD_RS(bit);
// 函数功能:读写控制
// i=1,读; i=0,写
void SetLCD_RW(bit i);
// 函数功能:使能信号
// i=1,使能; i=0,无效
void SetLCD_EN(bit i);
// 函数功能:复位
// i=1,不复位; i=0,复位
void SetLCD_RST(bit i);
// 函数功能:读状态
uchar ReadStatus(void);
// 函数功能:读一字节数据
uchar ReadOneByte(void);
// 函数功能:写指令
void WriteInstruc(uchar Instruction);
// 函数功能:写一字节数据
void WriteOneByte(uchar Data);
// 函数功能:复位LCD
void ResetLCD(void);
// 函数功能:清除显示
#define ClearLCD() WriteInstruc(0x01)
// 函数功能:地址归位
#define DispReturn() WriteInstruc(0x02)
// 函数功能:显示状态开/关
// temp取值如下:
// 0x08 : 显示关,游标关,游标位置反白关
// 0x0c :显示开,游标关,游标位置反白关
// 0x0d : 显示开,游标关,游标位置反白开
// 0x0e : 显示开,游标开,游标位置反白关
// 0x0f : 显示开,游标开,游标位置反白开
#define Disp_OnOff(temp) WriteInstruc(temp)
// 函数功能:进入点设置
// temp取值如下:
// 0x04 : 减量方式,不移位
// 0x05 :减量方式,移位
// 0x06 : 增量方式,不移位
// 0x07 :增量方式,移位
#define PointSet(temp) WriteInstruc(temp)
// 函数功能:游标或显示移位
// temp取值如下:
// 0x10 :光标左移
// 0x14 :光标右移
// 0x18 :显示整体左移
// 0x1c : 显示整体右移
#define Disp_Shift(temp) WriteInstruc(temp)
// 函数功能:功能设定
// temp取值如下:
// 0x20 :4位数据,基本指令操作
// 0x24 :4位数据,扩充指令操作
// 0x30 :8位数据,基本指令操作
// 0x34 :8位数据,扩充指令操作
#define FunctionSet(temp) WriteInstruc(temp)
// 函数功能:设定CGRAM地址
#define SetCGRAM_Add(Address) WriteInstruc(0x40 | Address)
// 函数功能:设定DDRAM地址
#define SetDDRAM_Add(Address) WriteInstruc(0x80 | Address)
// 以下函数:
// 进入待命模式、卷动地址开关开启、
// 反白选择、睡眠模式、
// 扩充功能设定、设定绘图RAM地址
// 在使用前必须先设置功能设定中的RE=1
// 即执行FunctionSet(0x24)或者FunctionSet(0x34)
// 函数功能:进入待命模式
#define WaitMode() WriteInstruc(0x01)
// 函数功能:卷动地址开关开启
// temp取值如下:
// 0x02 :允许输入垂直卷动地址
// 0x03 :允许输入IRAM和CGRAM地址
#define MoveOn(temp) WriteInstruc(temp)
// 函数功能:反白选择
#define TurnSelect(temp) WriteInstruc((0x04 | temp) & 0x07)
// 函数功能:睡眠模式
// temp取值如下:
// 0x08 :进入睡眠模式
// 0x0c :脱离睡眠模式
#define SleepMode(temp) WriteInstruc(temp)
// 函数功能:扩充功能设定
// temp取值如下:
// 0x20 :4位数据,基本指令操作,绘图关
// 0x22 :4位数据,基本指令操作,绘图开
// 0x24 :4位数据,扩充指令操作,绘图关
// 0x26 :4位数据,扩充指令操作,绘图开
// 0x30 :8位数据,基本指令操作,绘图关
// 0x32 :8位数据,基本指令操作,绘图开
// 0x34 :8位数据,扩充指令操作,绘图关
// 0x36 :8位数据,扩充指令操作,绘图开
#define ExternFuncSet(temp) WriteInstruc(temp)
// 函数功能:设定绘图RAM地址
#define SetFigRAM(Address) WriteInstruc(0x80 | Address)
// 函数功能:初始化LCD
void InitLCD(void);
// 函数功能:显示一个汉字
// 汉字(16x16): X--行(0 ~ 3); Y--列(0 ~ 7); Word--显示汉字数据
void DispOneWord(uchar X,uchar Y,uint Word);
// 函数功能:显示两个字符
// 字符(8x16): X--行(0 ~ 3); Y--列(0 ~ 7); Character--显示字符数据
void DispTwoCharacter(uchar X,uchar Y,uchar Character1,uchar Character2);
void disparr(uchar X,uchar Y,char *ptr);
#endif //_FYD12864_H_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -