📄 lcd12864.h
字号:
#ifndef __LCD12864_H
#define __LCD12864_H
#include "config.h"
extern void InitLCD12864(void);
extern const uint8 kuai[];
extern const uint8 liao[];
extern const uint8 xu[];
extern const uint8 ming[];
extern const uint8 ge[];
extern void LCD12864_Clear(void);
extern void hz_disp16(uint8 pag, uint8 col, const uint8 *hzk ,uint8 CS0_CS1);
extern void hz_disp16f(uint8 pag, uint8 col, const uint8 *hzk,uint8 CS0_CS1 );
void OutData(uint8 Date);
void LCD_W_Data(uint8 wDate ,uint8 CS0_CS1);
//extern void IOinit(void);
/******************************************************************************************************************
* 文 件 名:LCD12864.h
* 功 能:LCM12864图形液晶模块驱动头文件。使用LPC213X/214X的GPIO口模拟总线控制操作。
*
* 液晶模块与LPC213X/214X的连接如下所示:
*
* LCM12864 LPC213X/214X 备 注
*
* RS P0.16 0:传送命令; 1:传送数据
* RW P0.17 0:进行写操作 1:进行读操作
* E P0.12 读写脉冲
* D0 P1.16 数据线0
* D1 P1.17 数据线1
* D2 P1.18 数据线2
* D3 P1.19 数据线3
* D4 P1.20 数据线4
* D5 P1.21 数据线5
* D6 P1.22 数据线6
* D7 P1.23 数据线7
* CSA P1.15 左半屏选择,高电平选中
* CSB P1.18 右半屏选择,高电平选中
* RST P0.21 复位控制,低电平复位
* BLK P0.11 背光控制,高电平点亮
*
* 作 者:
* 日 期:2009年1月18号
******************************************************************************************************************/
/* 定义颜色数据类型(可以是数据结构)*/
#define TCOLOR uint8
/* 定义LCM像素数宏 */
#define GUI_LCM_XMAX 128 // 定义液晶x轴的像素数
#define GUI_LCM_YMAX 64 // 定义液晶y轴的像素数
/* 定义RS控制 */
#define LCM12864_RS 16
#define H_LCM12864_RS() IO0SET=(uint32)0x01<<LCM12864_RS
#define L_LCM12864_RS() IO0CLR=(uint32)0x01<<LCM12864_RS
/* 定义RW控制 */
#define LCM12864_RW 17
#define H_LCM12864_RW() IO0SET=(uint32)0x01<<LCM12864_RW
#define L_LCM12864_RW() IO0CLR=(uint32)0x01<<LCM12864_RW
/* 定义E控制 */
#define LCM12864_E 12
#define H_LCM12864_E() IO0SET=(uint32)0x01<<LCM12864_E
#define L_LCM12864_E() IO0CLR=(uint32)0x01<<LCM12864_E
/* 定义D0数据线 */
#define LCM12864_D0 16
#define H_LCM12864_D0() IO1SET=(uint32)0x01<<LCM12864_D0
#define L_LCM12864_D0() IO1CLR=(uint32)0x01<<LCM12864_D0
/* 定义D1数据线 */
#define LCM12864_D1 17
#define H_LCM12864_D1() IO1SET=(uint32)0x01<<LCM12864_D1
#define L_LCM12864_D1() IO1CLR=(uint32)0x01<<LCM12864_D1
/* 定义D2数据线 */
#define LCM12864_D2 18
#define H_LCM12864_D2() IO1SET=(uint32)0x01<<LCM12864_D2
#define L_LCM12864_D2() IO1CLR=(uint32)0x01<<LCM12864_D2
/* 定义D3数据线 */
#define LCM12864_D3 19
#define H_LCM12864_D3() IO1SET=(uint32)0x01<<LCM12864_D3
#define L_LCM12864_D3() IO1CLR=(uint32)0x01<<LCM12864_D3
/* 定义D4数据线 */
#define LCM12864_D4 20
#define H_LCM12864_D4() IO1SET=(uint32)0x01<<LCM12864_D4
#define L_LCM12864_D4() IO1CLR=(uint32)0x01<<LCM12864_D4
/* 定义D5数据线 */
#define LCM12864_D5 21
#define H_LCM12864_D5() IO1SET=(uint32)0x01<<LCM12864_D5
#define L_LCM12864_D5() IO1CLR=(uint32)0x01<<LCM12864_D5
/* 定义D6数据线 */
#define LCM12864_D6 22
#define H_LCM12864_D6() IO1SET=(uint32)0x01<<LCM12864_D6
#define L_LCM12864_D6() IO1CLR=(uint32)0x01<<LCM12864_D6
/* 定义D7数据线 */
#define LCM12864_D7 23
#define H_LCM12864_D7() IO1SET=(uint32)0x01<<LCM12864_D7
#define L_LCM12864_D7() IO1CLR=(uint32)0x01<<LCM12864_D7
/* 定义CSA控制 */
#define LCM12864_CSA 15
#define H_LCM12864_CSA() IO0SET=(uint32)0x01<<LCM12864_CSA
#define L_LCM12864_CSA() IO0CLR=(uint32)0x01<<LCM12864_CSA
/* 定义CSB控制 */
#define LCM12864_CSB 18
#define H_LCM12864_CSB() IO0SET=(uint32)0x01<<LCM12864_CSB
#define L_LCM12864_CSB() IO0CLR=(uint32)0x01<<LCM12864_CSB
/* 定义RST控制 */
#define LCM12864_RST 21
#define H_LCM12864_RST() IO0SET=(uint32)0x01<<LCM12864_RST
#define L_LCM12864_RST() IO0CLR=(uint32)0x01<<LCM12864_RST
/* 定义BLK控制 */
#define LCM12864_BLK 22//BEEP
#define H_LCM12864_BLK() IO0SET=(uint32)0x01<<LCM12864_BLK
#define L_LCM12864_BLK() IO0CLR=(uint32)0x01<<LCM12864_BLK
/* 定义LCM12864操作的命令字 */
#define LCM12864_DISPON 0x3f // 打开LCM12864显示
#define LCM12864_STARTROW 0xc0 // 显示起始行0,可以用LCM12864_STARTROW+x设置起始行。(x<64)
#define LCM12864_ADDRSTRX 0xb8 // 页起始地址,可以用LCM12864_ADDRSTRX+x设置当前页(即X)。(x<8)
#define LCM12864_ADDRSTRY 0x40 // 列起始地址,可以用LCM12864_ADDRSTRY+x设置当前列(即Y)。(x<64)
#define CS0 0x00
#define CS1 0x01
void LCD_W_Code(uint8 LCDCode, uint8 CS0_CS1);
// #define Disp_Off 0x3e
//#define LCDdataBus (0xff << 16)// P1.18控制WatchDogGPIO,低电平点亮
/*#define LCDRest (1 << 21)
#define LCDCs1 (1 << 15)
#define LCDCs2 (1 << 18)
#define LCDWR (1 << 17)
#define LCDDI (1 << 16)
#define LCDEn (1 << 12)*/
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -