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

📄 hal_display.h

📁 一款SmartPhone的驱动代码
💻 H
字号:
/************************************************************************
;  	HAL_DISPLAY.h
;
; 	Copyright (c) 2002 Epson Research and Development, Inc.
;
;  	All Rights Reserved.
;	2002.11.12	D Eric 		Start.					
;														
;************************************************************************/

#ifndef __HAL_DISPLAY_H__
#define __HAL_DISPLAY_H__

#define MAIN_WINDOW_ONLY			0x0000	
#define MAIN_AND_PIP				0x0100
#define MAIN_AND_PIP_OVERLAY		0x0300				

typedef enum
{
	cl_PIP_DISABLE = 0,
	cl_PIP_ENABLE,
	cl_PIP_WITH_OVERLAY
} PipOverlayDef;


typedef enum
{
	cl_PIXELDOUBLE_NONE  = 0x00,
	cl_PIXELDOUBLE_HORIZ = 0x01,
	cl_PIXELDOUBLE_VERT  = 0x02
} PixelDoublingDef;


typedef enum
{
	cl_MAIN_WINDOW = 0,
	cl_PIP_WINDOW
} WindowDef;

typedef enum
{
	cl_DISPLAY_MODE_NORMAL = 0,
	cl_DISPLAY_MODE_PIP,
	cl_DISPLAY_MODE_RESERVED,
	cl_DISPLAY_MODE_PIP_WITH_OVERLAY
} DisplayModeDef;

typedef enum
{
	cl_BIT_SHIFT_NONE = 0,
	cl_BIT_SHIFT_DIVIDE2
} BitShiftDef;

typedef enum
{
	cl_OVERLAY_NONE   = 0x0000,
	cl_OVERLAY_TRANS = 0x0001,
	cl_OVERLAY_AVG   = 0x0002,
	cl_OVERLAY_AND   = 0x0004,
	cl_OVERLAY_OR    = 0x0008,
	cl_OVERLAY_INV   = 0x0010
} OverlayModeDef;
/////////////////////////////////////////////////////////////////


/*****************************************************************************
;MACRO:			RgbTo332()
;DESCRIPTION:		This routine converts an RGB value to 3-3-2 format.
;PARAMETERS:		red:value from 0 to 0xff ;green:value from 0 to 0xff;blue:value from 0 to 0xff
;RETURNS:		8 bit value which is in 3-3-2 RGB format.
;*****************************************************************************/
#define RgbTo332(red, green, blue)  (unsigned char) ((((red) & 0xe0) | (((green) & 0xe0) >> 3) | (((blue) & 0xc0) >> 6)))

/*****************************************************************************
;MACRO:			RgbTo565()
;DESCRIPTION:		This routine converts an RGB value to 5-6-5 format.
;PARAMETERS:		red:value from 0 to 0xff;green:value from 0 to 0xff;blue:value from 0 to 0xff
;RETURNS:		16 bit value which is in 5-6-5 RGB format.
;*****************************************************************************/
#define RgbTo565(red, green, blue)  (unsigned short) ((((red) & 0xf8) << 8) | (((green) & 0xfc) << 3)) | (((blue) & 0xf8) >> 3)))


void SelectDispMode(DisplayModeDef displaymode);
void SetPipOverlayEnable(PipOverlayDef mode);
void SetBitsPerPixel(WindowDef WindowNum, unsigned long bpp);
unsigned long GetBitsPerPixel(WindowDef WindowNum);
void SetStride(WindowDef WindowNum, unsigned long stride);
unsigned short GetStride(WindowDef WindowNum);
void SetSwivelViewMode(WindowDef WindowNum, unsigned long mode);
unsigned long GetSwivelViewMode(WindowDef WindowNum);
void SetWinMirror(WindowDef WindowNum, unsigned long enable);
unsigned long GetWinMirror(WindowDef WindowNum);
void SetPixelDoubling(WindowDef WindowNum, PixelDoublingDef mode);
PixelDoublingDef GetPixelDoubling(WindowDef WindowNum);
unsigned long CalculateSwivelViewBias( WindowDef WindowNum );
void SetLcdDisplayBlank(unsigned short mode);
unsigned long GetLcdDisplayBlank(void);
void SetVideoInvert (unsigned short mode);
void SetStartAddress(WindowDef WindowNum, unsigned long address);
unsigned long GetStartAddress(WindowDef WindowNum);
void SetPipPosition(unsigned long xStart, unsigned long yStart, unsigned long xEnd, unsigned long yEnd);
void GetPipPosition(unsigned long *xStart, unsigned long *yStart, unsigned long *xEnd, unsigned long *yEnd);
void SetPipSize(unsigned long x1, unsigned long y1, unsigned long width, unsigned long height);
void SetPipSizeCenter(unsigned long x1, unsigned long y1, unsigned long width, unsigned long height);
void GetPipSize(unsigned long *x, unsigned long * y, unsigned long * width, unsigned long * height);
void SetDisplayMode(WindowDef WindowNum, unsigned long bpp);
DisplayModeDef GetDisplayMode(void);
unsigned long GetMemAddress(unsigned long BaseAddress);
unsigned long GetDisplayWidth(WindowDef WindowNum);
unsigned long GetDisplayHeight(WindowDef WindowNum);
void SetYUVToRGBEn(BOOL enable);
void SetYUVToRGBMode(unsigned short mode);
void SetYUVToRGBType(unsigned short mode);
void SetYUVImageStartAddress(unsigned long address);
void SetYUVOutputType(unsigned short mode);
void SetYRCToRGBBpp(unsigned short mode);
void SetOverlayKeyColor(OverlayModeDef mode, unsigned char red, unsigned char green, unsigned char blue);
BOOL GetOverlayKeyColor(OverlayModeDef mode, unsigned char *red, unsigned char *green, unsigned char *blue);
BOOL SetWinBitShift(WindowDef WindowNum, BitShiftDef BitShift);
BitShiftDef GetWinBitShift(WindowDef WindowNum);
void SetOverlayKeyColorEnable(OverlayModeDef OverlayMode, unsigned short enable);
OverlayModeDef GetOverlayKeyColorEnable(void);


#endif // __HAL_DISPLAY_H__


⌨️ 快捷键说明

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