📄 lcddriver.h
字号:
/****************************************************************************************
* 文件名:LCDDRIVE.H
* 功能:TFT4267液晶模块驱动。(头文件)
* 驱动芯片为S6D0129 (片内172800字节GRAM,即240*320*18/8),
*
* 液晶模块的管脚连接设置如下:
* IM3、IM0 ---------- GND (使用16位8080系统接口)
* DB0 ---------- GND
* DB1-DB8 ---------- D0-D7
* DB9 ---------- GND
* DB10-DB17 ---------- D8-D15
* CS ---------- LCM_nCS0 (使用Bank3)
* RS ---------- A1
* WR ---------- nWE
* RD ---------- nRE
* RESET ---------- P0.22
*
* VDD ---------- 3.0V
* LED_An ---------- 5V(串接限流电阻)
*
* 操作说明(写IR + CR/WDR [ + WDR...] ):
* R/W RS 操作
* 0 0 写IR(索引,即选择CR)
* 1 0 读芯片状态
* 0 1 写命令(CR)/数据(WDR)
* 1 1 读数据(RDR)
****************************************************************************************/
extern uint16 WaveTrackX[1024*128];
extern uint16 WaveTrackY[1024*128];
extern uint32 WaveTrackCnt;
#define GUI_LCM_XMAX 240 // 定义液晶x轴的点数
#define GUI_LCM_YMAX 320 // 定义液晶y轴的点数
#define TCOLOR uint16
// TFT液晶模块硬件操作宏
#define S6D0129_IR (*((volatile unsigned short *) 0x83200000))
#define S6D0129_DR (*((volatile unsigned short *) 0x83200002))
#define S6D0129_RST (1<<22)
// 定义S6D0129的部份寄存器
#define SET_ADDR_X 0x0020 /* GRAM地址设置(R21H,R20H) */
#define SET_ADDR_Y 0x0021
#define WR_RD_DATA 0x0022 /* 写/读GRAM数据 (R22H) */
#define SET_WINDOW_SX_EX 0x0046 /* window地址设置--x0,x1 (R46H) */
#define SET_WINDOW_SY 0x0048 /* window地址设置--y0 (R48H) */
#define SET_WINDOW_EY 0x0047 /* window地址设置--y1 (R47H) */
// 初始化数据结构定义
#define DATA_END 0xFF00
// 定义初始化数据的结构
typedef struct
{ uint16 com; // 命令字
uint16 dat; // 数据
uint16 dly; // 命令延时控制(如50)
} STCOM_INI;
extern void TftSendCom(uint16 com);
extern void TftSendDat(uint16 dat);
extern uint16 TftRcvDat(void);
extern uint8 TftSetAddr(uint16 x, uint16 y);
extern uint8 TftSetWrite(uint16 x, uint16 y);
extern uint8 TftSetWindow(uint16 x0, uint16 y0, uint16 x1, uint16 y1);
extern void DelaymS(uint32 no);
extern uint8 GUI_Point(uint16 x, uint16 y, TCOLOR color);
extern uint16 GUI_ReadPoint(uint16 x, uint16 y);
extern void GUI_HLine(uint16 x0, uint16 y0, uint16 x1, TCOLOR color);
extern void GUI_RLine(uint16 x0, uint16 y0, uint16 y1, TCOLOR color);
extern void GUI_FillSCR(uint16 dat);
extern void TftInit(void);
extern void TftReset(void);
/*********************************************************************************************************
** End Of File
********************************************************************************************************/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -