亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? lcd.h

?? 嵌入式系統設計與開發實例詳解-基于ARM的應用一書的源代碼
?? H
字號:
/***********************************************************************************************************                                                uC/GUI*                        Universal graphic software for embedded applications**                       (c) Copyright 2002, Micrium Inc., Weston, FL*                       (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH**              礐/GUI is protected by international copyright laws. Knowledge of the*              source code may not be used to write a similar product. This file may*              only be used in accordance with a license and should not be redistributed*              in any way. We appreciate your understanding and fairness.*----------------------------------------------------------------------
File        : LCD.H
Purpose     : Declares LCD interface functions
----------------------------------------------------------------------
*/

#ifndef LCD_H
#define LCD_H


/*
  ********************************************************************
  *                                                                  *
  *                   Basic type defines                             *
  *                                                                  *
  ********************************************************************

The follwing are defines for types used in the LCD-driver and the
emWin layers on top of that. Since "C" does not provide data types of
fixed length which are identical on all platforms, this is done here.
For most 16/32 controllers, the settings will work fine. However, if
you have similar defines in other sections of your program, you might
want to change or relocate these defines, e.g. in a TYPE.H file.
*/
 
#define I8    signed char
#define U8  unsigned char     /* unsigned 8  bits. */
#define I16   signed short    /*   signed 16 bits. */
#define U16 unsigned short    /* unsigned 16 bits. */
#define I32   signed long   /*   signed 32 bits. */
#define U32 unsigned long   /* unsigned 32 bits. */
#define I16P I16              /*   signed 16 bits OR MORE ! */
#define U16P U16              /* unsigned 16 bits OR MORE ! */

/*
  ********************************************************************
  *                                                                  *
  *               Settings for windows simulation                    *
  *                                                                  *
  ********************************************************************

Some settings in the configuration may conflict with the values required
in the Simulation. This is why we ignore the target settings for data
types and use the correct settings for the simulation.
(U32 could be defined as long, which would yield a 64 bit type on
the PC)
*/

#ifdef WIN32
  #pragma warning( disable : 4244 )  // Disable warning messages in simulation
  #pragma warning( disable : 4761 )  // Disable warning "integral size mismatch in argument; conversion supplied"
#endif                                      


/*      *************************************************************
        *                                                           *
        *                Constants                                  *
        *                                                           *
        *************************************************************
*/
#define LCD_ERR0 (0x10)
#define LCD_ERR_CONTROLLER_NOT_FOUND (LCD_ERR0+1)
#define LCD_ERR_MEMORY               (LCD_ERR0+2)

/*
      *********************************
      *                               *
      *      Drawing modes            *
      *                               *
      *********************************
*/

#define LCD_DRAWMODE_NORMAL (0)
#define LCD_DRAWMODE_XOR    (1<<0)
#define LCD_DRAWMODE_TRANS  (1<<1)
#define LCD_DRAWMODE_REV    (1<<2)


 
/*      *************************************************************
        *                                                           *
        *                Typedefs                                   *
        *                                                           *
        *************************************************************
*/

typedef int LCD_DRAWMODE;
typedef U32 LCD_COLOR;

 
/********************************************************
*
*     Data structures
*
*********************************************************
*/

typedef struct { I16P x,y; } GUI_POINT;
typedef struct { I16 x0,y0,x1,y1; } LCD_RECT;
/*typedef struct { GUI_POINT P0, P1; } LCD_RECT; */

typedef struct {
  int              NumEntries; 
  char             HasTrans;         
  const LCD_COLOR* pPalEntries; 
} LCD_LOGPALETTE; 

/* This is used for the simulation only ! */
typedef struct {
  int x,y;
  unsigned char KeyStat;
} LCD_tMouseState;

/********************************************************
*
*     Index2Color
*
*********************************************************

  This function needs to be int the public part of the software
  since it is needed by the simulation. Most other driver
  functions are hidden in the private header file.
*/

typedef LCD_COLOR    tLCDDEV_Index2Color     (int Index);
#if !defined (__C51__) /* To bypass Keil-compiler bug */
  tLCDDEV_Index2Color LCD_L0_Index2Color, LCD_L0_1_Index2Color;
#else
  LCD_COLOR    LCD_L0_Index2Color  (int Index);
  LCD_COLOR    LCD_L0_1_Index2Color(int Index);
#endif

/*      *************************************************************
        *                                                           *
        *                   Defines                                 *
        *                                                           *
        *    for device capabilities                                *
        *                                                           *
        *************************************************************

The following is the list of device capabilities which can, but do
not have to be implemented in the driver. This way the driver can be
enhanced in the future without affecting the driver interface,
keeping older drivers compatible.
More DevCaps can always be added in the future, as older drivers
are guaranteed to return 0 for all unimplemented features or queries.

The values below define the legal parameters to the LCD_GetDeviceCaps
and the LCD_GetpCapFunc routines.
*/

#define LCD_DEVCAP_NUMCOLORS    0x0     /* Quest number of colors
                                           which LCD can display */
#define LCD_DEVCAP_XSIZE        0x1     /* Quest horiz. res. of display */
#define LCD_DEVCAP_YSIZE        0x2     /* Quest vert. res. of display */
#define LCD_DEVCAP_VXSIZE       0x3     /* Quest vert. res. of virtual disp.*/
#define LCD_DEVCAP_VYSIZE       0x4     /* Quest vert. res. of virtual disp.*/
#define LCD_DEVCAP_XORG         0x5     /* X-origin ... usually 0 */
#define LCD_DEVCAP_YORG         0x6     /* Y-origin ... usually 0 */
#define LCD_DEVCAP_CONTROLLER   0x7     /* LCD Controller (Numerical) */
#define LCD_DEVCAP_BITSPERPIXEL 0x8     /* Bits per pixel ... 1/2/4/8 */
#define LCD_DEVCAP_NUMPAGES     0x10    /* Quest number of pages of display */

#define LCD_DEVCAP_COLOR        0x1000  /* Quest Color[0]
                                0x1001     Quest Color[1]
                                0x1002     Quest Color[2]
                                         ...                    */
 /* The next 4095 entries are reserved so up to 4096 colors
    can be queried          ...*/

int LCD_GetXSize(void);
int LCD_GetYSize(void);
int LCD_GetVXSize(void);
int LCD_GetVYSize(void);
U32 LCD_GetNumColors(void);
int LCD_GetBitsPerPixel(void);
int LCD_GetFixedPalette(void);
int LCD_GetXMag(void);
int LCD_GetYMag(void);
int LCD_GetNumDisplays(void);
int LCD_GetXSize_1(void);
int LCD_GetYSize_1(void);
int LCD_GetVXSize_1(void);
int LCD_GetVYSize_1(void);
U32 LCD_GetNumColors_1(void);
int LCD_GetBitsPerPixel_1(void);
int LCD_GetFixedPalette_1(void);
int LCD_GetXMag_1(void);
int LCD_GetYMag_1(void);

#define LCD_GET_XSIZE()        LCD_GetXSize()
#define LCD_GET_YSIZE()        LCD_GetYSize()
#define LCD_GET_VXSIZE()       LCD_GetVXSize()
#define LCD_GET_VYSIZE()       LCD_GetVYSize()
#define LCD_GET_NUMCOLORS()    LCD_GetNumColors()
#define LCD_GET_BITSPERPIXEL() LCD_GetBitsPerPixel()


/*********************************************************************
*
*      LCD_CLIP function table
*
**********************************************************************
*/
typedef void         tLCD_HL_DrawHLine    (int x0, int y0,  int x1);
typedef void         tLCD_HL_DrawPixel    (int x0, int y0);

typedef struct {
  tLCD_HL_DrawHLine*          pfDrawHLine;
  tLCD_HL_DrawPixel*          pfDrawPixel;
} tLCD_HL_APIList;

#if defined (__C51__) /* To bypass Keil-compiler bug */
  void LCD_DrawHLine(int x0, int y0,  int x1);
  void LCD_DrawPixel(int x0, int y0);
#else
  tLCD_HL_DrawHLine LCD_DrawHLine;
  tLCD_HL_DrawPixel LCD_DrawPixel;
#endif

void LCD_DrawVLine  (int x, int y0,  int y1);



/*********************************************************************
*
*              Declarations for LCD_
*
**********************************************************************
*/

void LCD_SetClipRectEx(const LCD_RECT* pRect);
void LCD_SetClipRectMax(void);

/* Get device capabilities (0 if not supported) */
I32  LCD_GetDevCap(int Index);

/* Initialize LCD using config-paramters */
int LCD_Init(void);

void LCD_SetBkColor   (LCD_COLOR Color); /* Set background color */
void LCD_SetColor     (LCD_COLOR Color); /* Set foreground color */
void LCD_SetPixelIndex(int x, int y, int ColorIndex);

/* Palette routines (Not available on all drivers) */
void LCD_InitLUT(void);

/* Decompressors */
typedef void tfDrawSpecialBitmap(int x0,int y0,int xsize, int ysize, const U8*pPixel, const LCD_LOGPALETTE* pLogPal, int xMag, int yMag);
#if !defined (__C51__) /* To bypass Keil-compiler bug */
  tfDrawSpecialBitmap LCD_DrawBitmap_RLE8, LCD_DrawBitmap_RLE4;
#else
  void LCD_DrawBitmap_RLE8(int x0,int y0,int xsize, int ysize, const U8*pPixel, const LCD_LOGPALETTE* pLogPal, int xMag, int yMag);
  void LCD_DrawBitmap_RLE4(int x0,int y0,int xsize, int ysize, const U8*pPixel, const LCD_LOGPALETTE* pLogPal, int xMag, int yMag);
#endif

LCD_DRAWMODE LCD_SetDrawMode  (LCD_DRAWMODE dm);
void LCD_SetColorIndex(int Index);
void LCD_SetBkColorIndex(int Index);
void LCD_FillRect(int x0, int y0, int x1, int y1);
void LCD_DrawBitmap   (int x0, int y0,
                       int xsize, int ysize,
                       int xMul, int yMul,
                       int BitsPerPixel,
                       int BytesPerLine,
                       const U8* pPixel,
                       const LCD_LOGPALETTE* pLogPal);
typedef void tLCD_SetPixelAA(int x, int y, U8 Intens);

#if defined (__C51__)  /* To bypass Keil-compiler bug */
  void tLCD_SetPixelAA(int x, int y, U8 Intens);
  void LCD_SetPixelAA_NoTrans(int x, int y, U8 Intens);
#else
  tLCD_SetPixelAA LCD_SetPixelAA;
  tLCD_SetPixelAA LCD_SetPixelAA_NoTrans;
#endif

LCD_COLOR LCD_AA_MixColors(LCD_COLOR Color, LCD_COLOR BkColor, U8 Intens);
LCD_COLOR    LCD_GetPixelColor(int x, int y);     /* Get RGB color of pixel */
unsigned int LCD_GetPixelIndex(int x, int y);
int LCD_GetBkColorIndex (void);
int LCD_GetColorIndex (void);



/*      *************************************************************
        *                                                           *
        *      LCD  publics not used by GUI                         *
        *                                                           *
        *************************************************************
  

The following functions can, but do not have to be defined in the LCD driver
as they are not used by the GUI level.

*/



#define LCD_On          LCD_L0_On
#define LCD_Off         LCD_L0_Off
#define LCD_ReInit      LCD_L0_ReInit
#define LCD_SetLUTEntry LCD_L0_SetLUTEntry


#define LCD_CC_UNLOCK (0)    /* Default mode: Cache is transparent */
#define LCD_CC_LOCK   (1)    /* Cache is locked, no write operations */
#define LCD_CC_FLUSH  (2)    /* Flush cache, do not change mode */
U8 LCD_L0_ControlCache(U8 mode);
/* Check if controller is still properly initialized */
int  LCD_L0_CheckInit(void);        /* returns if init is still O.K.
                                      by reading all available registers of
                                      Display controller.
                                      0: Init O.K.
                                    */

#define LCD_ControlCache LCD_L0_ControlCache

/*
        ******************************************
        *                                        *
        *        Support for paging              *
        *                                        *
        ******************************************
*/

int LCD_SelPage  (int NewPage);    /* returns formerly sel. page */
int LCD_ShowPage (int NewPage);    /* sets / returns visible page */
int LCD_GetSelPage (void);         /* returns selected page */
int LCD_GetVisPage (void);         /* returns visible page */


/*      *************************************************************
        *                                                           *
        *      LCD  imports                                         *
        *                  (for routines in LCDColor)               *
        *                                                           *
        *************************************************************
*/
  

int              LCD_Color2Index     (LCD_COLOR Color);
LCD_COLOR        LCD_Index2Color     (int Index);

/*********************************************************************
*
*       LCD_X_...
*
**********************************************************************
*/

void LCD_X_Init(void);
void LCD_X_On  (void);
void LCD_X_Off (void);

#endif /* LCD_H */




?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲欧美另类小说视频| 一区二区三区国产精华| 国产欧美中文在线| 色综合天天视频在线观看| 男女男精品视频| 亚洲欧美在线aaa| 在线看一区二区| 成熟亚洲日本毛茸茸凸凹| 免费在线观看视频一区| 一区二区高清在线| 亚洲视频资源在线| 国产欧美一区在线| 精品福利av导航| 日韩视频一区二区| 在线播放中文一区| 欧美又粗又大又爽| 在线日韩一区二区| 欧美性色综合网| 在线欧美一区二区| 欧美性感一类影片在线播放| 91免费在线视频观看| youjizz国产精品| 99久久精品国产一区| 成人午夜av影视| 不卡视频一二三| 从欧美一区二区三区| caoporm超碰国产精品| av成人免费在线| 99视频精品在线| 色综合天天性综合| 欧美艳星brazzers| 欧美二区在线观看| 精品国产一区二区三区四区四| 欧美本精品男人aⅴ天堂| 精品欧美一区二区久久| 国产日韩欧美a| 亚洲视频免费看| 在线视频你懂得一区二区三区| 成人黄色网址在线观看| 色综合久久久久久久| 欧美唯美清纯偷拍| 日韩精品中文字幕在线不卡尤物| 日韩精品资源二区在线| 国产精品色在线观看| 一区二区三区不卡视频在线观看 | 欧美成人国产一区二区| 久久久久久久久岛国免费| 国产精品麻豆久久久| 亚洲第一搞黄网站| 韩国一区二区视频| 一本大道av一区二区在线播放| 欧美日韩日日骚| 精品美女一区二区| 中文字幕在线观看不卡| 日韩精品一区二区三区视频播放 | 国产一区二区免费视频| 久久只精品国产| 国产精品系列在线观看| 国产精品三级av在线播放| 成人精品视频.| 亚洲三级免费观看| 欧洲另类一二三四区| 亚洲成人av福利| 精品国产免费一区二区三区四区| 精品一区二区在线免费观看| 精品福利一区二区三区| 国产成人免费av在线| 亚洲影院久久精品| 欧美日韩综合不卡| 青青草原综合久久大伊人精品 | 欧美日韩亚洲国产综合| 日本亚洲一区二区| 精品国产制服丝袜高跟| 成人性生交大片免费看在线播放| 中文字幕色av一区二区三区| 日本道在线观看一区二区| 日日欢夜夜爽一区| 亚洲精品在线免费播放| 成人av小说网| 亚洲国产成人av网| 久久久久国色av免费看影院| 91同城在线观看| 欧美aa在线视频| 国产精品美女www爽爽爽| 欧美影院精品一区| 国内精品久久久久影院色| 亚洲三级理论片| 日韩欧美一级二级三级久久久 | 亚洲成人综合网站| 久久精品亚洲乱码伦伦中文 | 欧美精品一区二区三区很污很色的 | 蜜桃一区二区三区四区| wwwwww.欧美系列| 一本大道av伊人久久综合| 蜜桃传媒麻豆第一区在线观看| 国产精品免费免费| 欧美一区二区三区免费大片| 成人国产在线观看| 美脚の诱脚舐め脚责91| 综合色中文字幕| 日韩欧美美女一区二区三区| 91丝袜美腿高跟国产极品老师 | 亚洲欧洲日产国产综合网| 欧美一卡在线观看| 成人精品在线视频观看| 麻豆精品视频在线观看视频| 亚洲摸摸操操av| 久久亚洲二区三区| 91精品国产综合久久久久久久 | 成人涩涩免费视频| 久久99精品久久只有精品| 一区二区三区**美女毛片| 国产女人18毛片水真多成人如厕 | 亚洲h在线观看| 亚洲国产成人在线| 2023国产精品| 51精品久久久久久久蜜臀| 国产一级精品在线| 亚洲超碰精品一区二区| 日韩一区二区三区av| 国产精品欧美一级免费| 国产精品狼人久久影院观看方式| 日本va欧美va精品| 欧美一级一区二区| 亚洲成人免费看| 欧美一区二区三区视频| 日韩av一区二区三区| 色激情天天射综合网| 男男视频亚洲欧美| 精品视频一区三区九区| 日韩欧美区一区二| 国产经典欧美精品| 一区二区三区欧美| 99这里只有精品| 人人爽香蕉精品| 国产日韩成人精品| 午夜av一区二区三区| 色天天综合久久久久综合片| 久久精品人人做人人综合| 国产99一区视频免费 | 3atv一区二区三区| 日韩精品专区在线影院重磅| 国产做a爰片久久毛片| 国产日韩av一区| 91在线精品一区二区三区| 亚洲一区二区视频在线| 蓝色福利精品导航| 国产盗摄女厕一区二区三区 | 欧美美女激情18p| 毛片一区二区三区| 国产精品麻豆99久久久久久| 欧美欧美欧美欧美| 国产麻豆91精品| 亚洲品质自拍视频| 色诱亚洲精品久久久久久| 精品一区二区精品| 中文字幕一区二区三区在线观看| 91精品在线观看入口| 制服丝袜亚洲精品中文字幕| 欧美区视频在线观看| 欧美日韩国产综合一区二区| 床上的激情91.| 国产成人无遮挡在线视频| 免费人成在线不卡| 亚洲综合无码一区二区| 欧美精品丝袜久久久中文字幕| eeuss影院一区二区三区| 国产欧美日韩不卡| 99re热这里只有精品视频| 日韩国产成人精品| 国产乱码精品一品二品| 蜜桃视频在线观看一区| 久久爱www久久做| 久久国产成人午夜av影院| 精品一区二区免费在线观看| 美女视频一区二区| 国产美女在线观看一区| 蜜桃视频免费观看一区| 视频在线观看一区二区三区| xfplay精品久久| 日韩视频免费观看高清在线视频| 亚洲欧美一区二区三区极速播放| 久久九九久久九九| 欧美一区二区三区爱爱| 7777精品伊人久久久大香线蕉超级流畅| 成人av电影在线| 高清不卡一二三区| 国产69精品久久久久毛片| 国产精品一区在线观看乱码| 国产一区二区三区在线观看免费| 日本免费在线视频不卡一不卡二 | 成人午夜伦理影院| 在线观看视频一区二区欧美日韩| 欧美大片在线观看一区二区| 国产精品美女一区二区三区| 天堂蜜桃91精品| 不卡影院免费观看| 欧美一激情一区二区三区| 国产欧美日韩不卡| 日本在线不卡视频|