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

📄 hal_lcd.h

📁 一款SmartPhone的驱动代码
💻 H
字号:
/************************************************************************
;																
;	Copyright (C) SEIKO EPSON CORP. 2002				
;														
;	File Name: HAL_LCD.h								
;														
;	Revision history									
;	2002.11.12	D Eric 		Start.					
;														
;************************************************************************/
#ifndef __HAL_LCD_H__
#define __HAL_LCD_H__

#define	RGB_PANEL_WIDTH_9				0x0000
#define	RGB_PANEL_WIDTH_12				0x0010
#define	RGB_PANEL_WIDTH_16				0x0020
#define	RGB_PANEL_WIDTH_18				0x0030
#define	RGB_PANEL_WIDTH_24				0x0040
#define	RGB_PANEL_WIDTH_NO				0x0050

#define	LCD_PAR_VSYNC_ENABLE				0x0080
#define	LCD_PAR_VSYNC_DISABLE			0xFF7F

#define	LCD_PAR_TYPE68					0x0040
#define	LCD_PAR_TYPE80					0x0000

#define	DATA_FORMAT_8_332				0x0000
#define	DATA_FORMAT_8_444				0x0001
#define	DATA_FORMAT_8_666				0x0003
#define	DATA_FORMAT_16_444				0x0005
#define	DATA_FORMAT_16_565				0x0006
#define	DATA_FORMAT_18_666				0x0007
#define	DATA_FORMAT_16_888				0x0002
#define	DATA_FORMAT_24_888				0x0004

// LCD interface status register
#define	LCD_IF_BUSY						0x0001

// LCD interface frame transfer register
#define	LCD_IF_FRAME_TRANSFER				0x0001


#define	LCD_SERIAL_CLK_PHA				0x0002

typedef enum
{
	cl_PORT_ALL_OFF = 0,
	cl_PORT_LCD1,
	cl_PORT_LCD2,
	cl_PORT_YUV_DIGITAL,
	cl_PORT_T3,
	cl_PORT_SERIAL_VIDEO,
	cl_PORT_RESERVED
} OutputPortDef;

typedef enum
{
	cl_LCD1 = 0,
	cl_LCD2
}LcdDef;

typedef enum
{
	cl_RGB_Serial=0,
	cl_Reserved=1,
	cl_Parallel_Serial=2,
	cl_Parallel_Parallel=3
}LcdIFDef;


void SetLcdPClkDivide(unsigned short divide);
unsigned short GetLcdPClkDivide(void);
unsigned long GetLcdPClkFreq(void);
unsigned long GetLcdFrameRate(void);
void SetPanelIfType(unsigned short mode);
unsigned short GetPanelIfType(void);
void SetLcdHVDispPer (LcdDef LcdNum,unsigned short HorizDispPer,unsigned short VertDispPer);
unsigned long GetLcdHdp(OutputPortDef OutputPort);
unsigned long GetLcdVdp(OutputPortDef OutputPort);
BOOL SetOutputPort(OutputPortDef port);
OutputPortDef GetOutputPort(void);
void SetRGBPanelDataWidth(unsigned char width);
unsigned short GetRGBPanelDataWidth(void);
void SetRGBPanelClkPol(unsigned short mode);
void SetRGBPanelType(unsigned short type);
unsigned short GetRGBPanelType(void);
void SetLcdHVTotal (unsigned short HorizTotal,unsigned short VertTotal);
void SetLcdHVStartPos (unsigned short HPos,unsigned short VPos);
void SetLcdFpline(unsigned short FpLinePol,unsigned short FpLineWidth,unsigned short FpLinePos);
void SetLcdFPFrame(unsigned short FPFramePol,unsigned short FPFrameWidth,unsigned short FPFramePos);
void SetLcdParallelIf(LcdDef LcdNum,unsigned short mode);
void SetLCDPCPol(unsigned short mode);
void Write_lcd_com(unsigned short OutData);
void Write_lcd_param(unsigned short OutData);
void Write_lcd_param_loop(unsigned short Datamax, unsigned short *pOutData);
void SetAutoTransferMode(unsigned short mode);
void TriggerTransfer(void);
void SetSerialLcdClkDivide(unsigned short divide);
unsigned long GetSerialLcdClkDivide(void);
unsigned long GetSerialLcdClkFreq(void);
void SetSerialBypassMode(unsigned short mode);
void SetLcdSif(LcdDef LcdNum,unsigned short mode);

#endif // __HAL_LCD_H__



⌨️ 快捷键说明

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