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

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

?? lcd.h

?? ucCos移植到廣州友善nano2410
?? H
?? 第 1 頁 / 共 2 頁
字號:
/*
*********************************************************************************************************
*                                                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

#include "GUI_ConfDefaults.h" /* Used for GUI_UNI_PTR */

#if defined(__cplusplus)
extern "C" {     /* Make sure we have C-declarations in C++ programs */
#endif

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

The follwing are defines for types used in the LCD-driver and the
GUI 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 GUI_UNI_PTR * 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);
typedef unsigned int   tLCDDEV_Color2Index  (LCD_COLOR Color);
typedef unsigned int   tLCDDEV_GetIndexMask (void);
LCD_COLOR      LCD_L0_Index2Color  (int Index);
LCD_COLOR      LCD_L0_1_Index2Color(int Index);
LCD_COLOR      LCD_L0_2_Index2Color(int Index);
LCD_COLOR      LCD_L0_3_Index2Color(int Index);
LCD_COLOR      LCD_L0_4_Index2Color(int Index);
unsigned int   LCD_L0_Color2Index  (LCD_COLOR Color);
unsigned int   LCD_L0_1_Color2Index(LCD_COLOR Color);
unsigned int   LCD_L0_2_Color2Index(LCD_COLOR Color);
unsigned int   LCD_L0_3_Color2Index(LCD_COLOR Color);
unsigned int   LCD_L0_4_Color2Index(LCD_COLOR Color);
unsigned int   LCD_L0_GetIndexMask  (void);
unsigned int   LCD_L0_1_GetIndexMask(void);
unsigned int   LCD_L0_2_GetIndexMask(void);
unsigned int   LCD_L0_3_GetIndexMask(void);
unsigned int   LCD_L0_4_GetIndexMask(void);


/*********************************************************************
*
*     Color conversion API tables
*/

typedef struct {
  tLCDDEV_Color2Index*  pfColor2Index;
  tLCDDEV_Index2Color*  pfIndex2Color;
  tLCDDEV_GetIndexMask* pfGetIndexMask;
} LCD_API_COLOR_CONV;

extern const LCD_API_COLOR_CONV LCD_API_ColorConv_1;
extern const LCD_API_COLOR_CONV LCD_API_ColorConv_2;
extern const LCD_API_COLOR_CONV LCD_API_ColorConv_4;
extern const LCD_API_COLOR_CONV LCD_API_ColorConv_8666;

#define GUI_COLOR_CONV_1    &LCD_API_ColorConv_1
#define GUI_COLOR_CONV_2    &LCD_API_ColorConv_2
#define GUI_COLOR_CONV_4    &LCD_API_ColorConv_4
#define GUI_COLOR_CONV_8666 &LCD_API_ColorConv_8666

/*********************************************************************
*
*      LCDDEV function table
*
**********************************************************************

  Below the routines which need to in an LCDDEV routine table are
  defined. All of these routines have to be in the low-level driver
  (LCD_L0) or in the memory device which can be used to replace the
  driver.
  The one exception to this is the SetClipRect routine, which would
  be identical for all drivers and is therefor contained in the
  level above (LCD).
*/
typedef void         tLCDDEV_DrawHLine    (int x0, int y0,  int x1);
typedef void         tLCDDEV_DrawVLine    (int x , int y0,  int y1);
typedef void         tLCDDEV_FillRect     (int x0, int y0, int x1, int y1);
typedef unsigned int tLCDDEV_GetPixelIndex(int x, int y);
typedef void         tLCDDEV_SetPixelIndex(int x, int y, int ColorIndex);
typedef void         tLCDDEV_XorPixel     (int x, int y);
typedef void         tLCDDEV_FillPolygon  (const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
typedef void         tLCDDEV_FillPolygonAA(const GUI_POINT* pPoints, int NumPoints, int x0, int y0);
typedef void         tLCDDEV_GetRect      (LCD_RECT*pRect);
typedef int          tLCDDEV_Init         (void);
typedef void         tLCDDEV_On           (void);
typedef void         tLCDDEV_Off          (void);
typedef void         tLCDDEV_SetLUTEntry  (U8 Pos, LCD_COLOR color);

/*********************************************************************
*
*     Memory device API tables
*/
#if GUI_COMPILER_SUPPORTS_FP
  typedef struct tLCDDEV_APIList_struct tLCDDEV_APIList;
#endif

typedef void tLCDDEV_DrawBitmap   (int x0, int y0, int xsize, int ysize,
                       int BitsPerPixel, int BytesPerLine,
                       const U8 GUI_UNI_PTR * pData, int Diff,
                       const void* pTrans);   /* Really LCD_PIXELINDEX, but is void to avoid compiler warnings*/

struct tLCDDEV_APIList_struct {
  tLCDDEV_Color2Index*        pfColor2Index;
  tLCDDEV_Index2Color*        pfIndex2Color;
  tLCDDEV_GetIndexMask*       pfGetIndexMask;
  tLCDDEV_DrawBitmap*         pfDrawBitmap;
  tLCDDEV_DrawHLine*          pfDrawHLine;
  tLCDDEV_DrawVLine*          pfDrawVLine;
  tLCDDEV_FillRect*           pfFillRect;
  tLCDDEV_GetPixelIndex*      pfGetPixelIndex;
  tLCDDEV_GetRect*            pfGetRect;
  tLCDDEV_SetPixelIndex*      pfSetPixelIndex;
  tLCDDEV_XorPixel*           pfXorPixel;
  tLCDDEV_SetLUTEntry*        pfSetLUTEntry;
  #if GUI_SUPPORT_MEMDEV
    tLCDDEV_FillPolygon*      pfFillPolygon;
    tLCDDEV_FillPolygonAA*    pfFillPolygonAA;
    const tLCDDEV_APIList*    pMemDevAPI;
    unsigned                  BitsPerPixel;
  #endif
};
#if GUI_COMPILER_SUPPORTS_FP
  extern const struct tLCDDEV_APIList_struct GUI_MEMDEV__APIList1;
  extern const struct tLCDDEV_APIList_struct GUI_MEMDEV__APIList8;
  extern const struct tLCDDEV_APIList_struct GUI_MEMDEV__APIList16;

  #define GUI_MEMDEV_APILIST_1  &GUI_MEMDEV__APIList1
  #define GUI_MEMDEV_APILIST_8  &GUI_MEMDEV__APIList8
  #define GUI_MEMDEV_APILIST_16 &GUI_MEMDEV__APIList16
#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.
*/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产露脸精彩对白| 久久久久97国产精华液好用吗| 国产精品毛片无遮挡高清| 狠狠网亚洲精品| 久久婷婷成人综合色| 国产91露脸合集magnet| 国产精品免费网站在线观看| 91美女片黄在线| 日韩精品91亚洲二区在线观看| 欧美福利视频导航| 狠狠色狠狠色综合日日91app| 欧美国产丝袜视频| 色偷偷久久一区二区三区| 亚欧色一区w666天堂| 日韩久久精品一区| 国产成人午夜片在线观看高清观看| 欧美国产视频在线| 欧美日韩大陆在线| 国产激情精品久久久第一区二区| 综合久久久久久| 91精品国产色综合久久ai换脸 | 亚洲国产aⅴ天堂久久| 欧美一二三区在线| 成人国产精品免费观看视频| 亚洲一区二区三区三| 欧美精品一区二区三区四区| 97精品国产97久久久久久久久久久久 | 久久久久88色偷偷免费 | 欧美日韩一区二区三区不卡 | 国产精品网站在线| 欧美日韩精品一二三区| 日韩一级高清毛片| 亚洲18女电影在线观看| 精品久久人人做人人爰| 亚洲欧美区自拍先锋| 成人综合日日夜夜| 国产精品蜜臀av| 丝袜a∨在线一区二区三区不卡| 91在线porny国产在线看| 亚洲国产精品黑人久久久| 久久精品国产第一区二区三区| 久久综合久久鬼色中文字| 综合欧美一区二区三区| 精品少妇一区二区三区在线播放| 91香蕉视频黄| 国产精品亚洲成人| 免费欧美在线视频| 亚洲一区二区在线免费看| 国产精品情趣视频| 精品国产伦一区二区三区观看方式| 色悠悠亚洲一区二区| 国产另类ts人妖一区二区| 香蕉久久一区二区不卡无毒影院| 中文字幕va一区二区三区| 日韩视频在线你懂得| 欧美精品日韩一区| 日本精品一级二级| 不卡高清视频专区| 国产成人鲁色资源国产91色综| 奇米精品一区二区三区在线观看| 一区二区三区日韩欧美| 1000部国产精品成人观看| 国产无一区二区| 久久久久久一级片| 欧美精品一区二区蜜臀亚洲| 欧美一区二区三区不卡| 欧美系列一区二区| 欧美在线|欧美| 在线欧美小视频| 色av综合在线| 日本韩国精品在线| 色综合久久99| 欧美在线观看视频在线| 欧美日韩在线直播| 欧美午夜精品电影| 欧美精品欧美精品系列| 欧美日韩国产一级| 欧美精品久久99| 4438x成人网最大色成网站| 欧美日韩在线播放一区| 欧美日韩大陆一区二区| 91精品久久久久久久99蜜桃| 欧美一区午夜视频在线观看| 日韩一区二区三区观看| 精品福利一区二区三区| 久久久久成人黄色影片| 亚洲欧洲无码一区二区三区| 亚洲精品国久久99热| 日韩一区二区三区av| 亚洲啪啪综合av一区二区三区| 久久久久九九视频| 精品国产一区二区三区四区四| 欧美日本在线播放| 国产精品毛片久久久久久| 欧美成人高清电影在线| 91精品国产一区二区三区蜜臀 | 91香蕉视频mp4| 久久久亚洲精品石原莉奈| 琪琪久久久久日韩精品| 麻豆成人免费电影| 粉嫩久久99精品久久久久久夜| 成人免费av网站| 欧美午夜精品久久久| 亚洲精品一区二区三区精华液| 久久久久久久久免费| 亚洲视频综合在线| 视频一区中文字幕国产| 国内一区二区在线| 一本色道久久综合精品竹菊| 欧美一区二区网站| 国产精品五月天| 日本亚洲电影天堂| 97精品电影院| 精品精品欲导航| 亚洲欧美一区二区三区极速播放 | 亚洲激情自拍视频| 免费一级欧美片在线观看| 岛国一区二区在线观看| 欧美丝袜丝交足nylons图片| 久久精品在线免费观看| 一级中文字幕一区二区| 国产一区二区三区国产| 欧美色倩网站大全免费| 国产网站一区二区| 亚洲成人综合在线| 成人av午夜影院| 欧美白人最猛性xxxxx69交| 国产精品第五页| 国产一区欧美日韩| 欧美日韩三级在线| 国产精品大尺度| 精品一区免费av| 欧美日韩免费观看一区三区| 中文字幕欧美区| 久久99精品国产.久久久久久| 在线观看三级视频欧美| 亚洲国产精品精华液ab| 极品少妇一区二区| 欧美人与禽zozo性伦| 亚洲图片欧美激情| 国产精品一线二线三线| 欧美一区二区三区爱爱| 香港成人在线视频| 色诱视频网站一区| 日韩码欧中文字| 粉嫩13p一区二区三区| 精品国产在天天线2019| 日韩一区二区三区免费观看 | 日本韩国欧美三级| 国产福利91精品一区二区三区| 欧美mv日韩mv| 国产成人免费高清| 国产精品三级av| 色婷婷国产精品综合在线观看| 一区二区三区四区亚洲| 99久久精品免费看国产免费软件| 国产精品久久午夜| 7777精品伊人久久久大香线蕉| 精品一区二区三区免费| 亚洲一区在线免费观看| 日本aⅴ精品一区二区三区| 色94色欧美sute亚洲线路一ni| 国产精品亲子伦对白| 成人午夜伦理影院| 国产欧美一区二区三区在线老狼| 国产美女娇喘av呻吟久久| 精品国产乱码久久久久久免费 | 青娱乐精品视频| 欧美美女一区二区| 日韩高清不卡在线| 91麻豆精品91久久久久久清纯| 亚洲地区一二三色| 69堂亚洲精品首页| 久久爱www久久做| 久久综合狠狠综合| 国产白丝网站精品污在线入口| 久久婷婷成人综合色| 国产69精品久久久久777| 国产精品网曝门| 色综合久久久久综合| 亚洲成a天堂v人片| 欧美一区日韩一区| 国产伦精一区二区三区| 中文字幕高清一区| 91麻豆免费在线观看| 亚洲图片有声小说| 日韩一级视频免费观看在线| 久久99久久99| 国产精品伦一区二区三级视频| 一本久道久久综合中文字幕| 亚洲国产aⅴ成人精品无吗| 欧美一级专区免费大片| 国产一区二区主播在线| 国产精品国产三级国产| 欧美系列一区二区| 久久超碰97人人做人人爱| 国产精品看片你懂得| 欧美日韩激情一区| 国产精品77777竹菊影视小说| 亚洲精品第一国产综合野|