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

📄 drv_glcd.h

📁 优龙LPC1788开发板资料
💻 H
字号:
/*************************************************************************
 *
*    Used with ICCARM and AARM.
 *
 *    (c) Copyright IAR Systems 2008
 *
 *    File name   : drv_glcd.h
 *    Description : Graphical LCD driver include file
 *
 *    History :
 *    1. Date        : 6, March 2008
 *       Author      : Stanimir Bonev
 *       Description : Create
 *
 *
 *    $Revision: 24636 $
 *
 *    @Modify: NXP MCU Application Team - NguyenCao
 *    @Date: 04. March. 2011
 **************************************************************************/
#include "lpc_types.h"

#define YL_LCD35_32bpp	(0)
#define YL_LCD35_16bpp	(1)
#define YL_LCD70_16bpp	(2)

#define DEF_LCD_TYPE  YL_LCD35_32bpp


#ifndef __GLCD_DRV_H
#define __GLCD_DRV_H

typedef struct _Bmp_t {
  uint32_t  H_Size;
  uint32_t  V_Size;

  uint32_t *pPalette;
  uint8_t *pPicStream;
  uint8_t *pPicDesc;
} Bmp_t, *pBmp_t;

typedef struct _FontType_t {
  uint32_t H_Size;
  uint32_t V_Size;
  uint32_t CharacterOffset;
  uint32_t CharactersNuber;
  uint8_t *pFontStream;
  uint8_t *pFontDesc;
} FontType_t, *pFontType_t;

typedef uint32_t LdcPixel_t, *pLdcPixel_t;

#if		(DEF_LCD_TYPE == YL_LCD70_16bpp )
	// ADD 
#elif(DEF_LCD_TYPE == YL_LCD35_16bpp )
	//ADD
#else 								 //default lcd type is YL_LCD35_32bpp
	#define C_GLCD_REFRESH_FREQ     (50HZ)
	#define C_GLCD_H_SIZE           320
	#define C_GLCD_H_PULSE          30
	#define C_GLCD_H_FRONT_PORCH    20
	#define C_GLCD_H_BACK_PORCH     38
	#define C_GLCD_V_SIZE           240
	#define C_GLCD_V_PULSE          3
	#define C_GLCD_V_FRONT_PORCH    5
	#define C_GLCD_V_BACK_PORCH     15
	#define C_GLCD_BitsPP			32
	#define C_GLCD_BytesPP			4
#endif
	
#define C_GLCD_PWR_ENA_DIS_DLY  10000
#define C_GLCD_ENA_DIS_DLY      10000


#define CRSR_PIX_32     0
#define CRSR_PIX_64     1
#define CRSR_ASYNC      0
#define CRSR_FRAME_SYNC 2

#define TEXT_DEF_TAB_SIZE 5

#define TEXT_BEL1_FUNC()

void GLCD_Init (void);
void GLCD_Dis_Logo (const uint8_t *pPain, const uint8_t * pPallete);
void GLCD_SetPallet (const uint32_t * pPallete);
void GLCD_Ctrl (Bool bEna);
void GLCD_Cursor_Cfg(int Cfg);
void GLCD_Cursor_En(int cursor);
void GLCD_Cursor_Dis(int cursor);
void GLCD_Move_Cursor(int x, int y);
void GLCD_Copy_Cursor (const uint32_t *pCursor, int cursor, int size);
void GLCD_SetFont(pFontType_t pFont, LdcPixel_t Color, LdcPixel_t BackgndColor);
void GLCD_SetWindow(uint32_t X_Left, uint32_t Y_Up,
                    uint32_t X_Right, uint32_t Y_Down);
void GLCD_TextSetPos(uint32_t X, uint32_t Y);
void GLCD_TextSetTabSize(uint32_t Size);
static void LCD_SET_WINDOW (uint32_t X_Left, uint32_t X_Right,
                            uint32_t Y_Up, uint32_t Y_Down);
static void LCD_WRITE_PIXEL (uint32_t Pixel);
static Bool GLCD_TextCalcWindow (uint32_t * pXL, uint32_t * pXR,
                                    uint32_t * pYU, uint32_t * pYD,
                                    uint32_t * pH_Size, uint32_t * pV_Size);
int _putchar (int c);


#endif // __GLCD_DRV_H

⌨️ 快捷键说明

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