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

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

?? lcd.h

?? UCOSII在STM32平臺的移植
?? 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一区二区三区免费野_久草精品视频
日韩毛片高清在线播放| 欧美激情在线观看视频免费| 91免费版pro下载短视频| 国产成人精品三级麻豆| 福利一区二区在线观看| 成人国产亚洲欧美成人综合网| 国产河南妇女毛片精品久久久| 国产在线一区观看| 国产凹凸在线观看一区二区| 高清不卡在线观看av| 成人手机电影网| 91色|porny| 欧美日韩国产精品成人| 欧美成人vps| 中文av字幕一区| 亚洲一区二区三区国产| 美女一区二区久久| 成人一区二区三区| 99精品国产91久久久久久| 欧亚洲嫩模精品一区三区| 7777女厕盗摄久久久| 久久综合久久综合亚洲| 中文字幕中文字幕一区| 亚洲成人激情综合网| 久久国产麻豆精品| a亚洲天堂av| 8v天堂国产在线一区二区| 久久久久久久免费视频了| 国产精品成人一区二区三区夜夜夜| 亚洲女人的天堂| 捆绑调教美女网站视频一区| 成人美女视频在线观看| 欧美日韩国产123区| 国产日韩av一区二区| 亚洲一区二区三区在线| 国产一区二区三区黄视频| 一道本成人在线| 精品国产91乱码一区二区三区| 亚洲三级免费电影| 久久精品国产色蜜蜜麻豆| 91在线看国产| 精品国一区二区三区| 一区2区3区在线看| 国产福利精品导航| 欧美一级理论片| 亚洲免费观看在线视频| 国产福利不卡视频| 日本一区二区成人在线| 免费高清在线视频一区·| 99国产精品国产精品久久| 日韩精品最新网址| 亚洲五月六月丁香激情| 99久免费精品视频在线观看 | 久久亚洲春色中文字幕久久久| 亚洲女性喷水在线观看一区| 国产成人在线看| 日韩视频在线一区二区| 亚洲va中文字幕| 色综合咪咪久久| 国产精品久久久久久久久搜平片| 寂寞少妇一区二区三区| 欧美日韩国产天堂| 亚洲国产成人高清精品| eeuss国产一区二区三区| 国产亚洲一区二区在线观看| 日产精品久久久久久久性色| 精品视频在线看| 亚洲精品视频在线看| 99re热视频这里只精品 | 国产99精品国产| 精品国产伦一区二区三区观看方式| 五月激情综合婷婷| 欧美日韩一级黄| 丝袜美腿亚洲色图| 欧美一区二区三区在线观看| 午夜精品视频一区| 欧美一区二区福利在线| 麻豆精品一区二区三区| 日韩精品一区二区三区视频播放 | 26uuu亚洲综合色欧美| 精品中文av资源站在线观看| 欧美mv和日韩mv国产网站| 久久精品999| 久久久国产精华| 成人激情免费网站| 亚洲黄色小说网站| 欧美日韩在线播放| 老司机免费视频一区二区三区| 精品久久久久99| 丁香婷婷综合网| 亚洲一区免费在线观看| 欧美一区二区三区色| 国产一区二区主播在线| 欧美激情一区二区三区蜜桃视频| hitomi一区二区三区精品| 一二三区精品视频| 日韩视频在线你懂得| 国产成人在线观看| 亚洲综合小说图片| 日韩欧美中文字幕一区| 国产精品主播直播| 一区二区三区四区视频精品免费 | 日韩一区二区免费电影| 国产乱码精品1区2区3区| 国产精品九色蝌蚪自拍| 国产亚洲欧洲一区高清在线观看| 成人精品视频一区二区三区 | 欧美性色黄大片| 美女网站色91| 日韩美女视频19| 7777精品久久久大香线蕉 | 色综合色狠狠综合色| 蜜桃视频一区二区| 亚洲免费三区一区二区| 久久综合九色综合97婷婷| 一道本成人在线| 国产另类ts人妖一区二区| 亚洲小说春色综合另类电影| 久久免费电影网| 欧美电影一区二区三区| 97久久人人超碰| 精品写真视频在线观看| 亚洲亚洲人成综合网络| 国产精品情趣视频| 日韩免费观看高清完整版 | 久久久亚洲精品一区二区三区| 91美女福利视频| 国产一区二区主播在线| 美洲天堂一区二卡三卡四卡视频| 亚洲自拍偷拍九九九| 国产精品欧美经典| 久久久久久麻豆| 欧美xxxxxxxx| 欧美不卡一区二区三区四区| 欧美色涩在线第一页| 91网站在线观看视频| 懂色av一区二区三区免费观看 | 中文在线资源观看网站视频免费不卡| 欧美丰满一区二区免费视频| 在线亚洲精品福利网址导航| 91在线视频在线| 一本到三区不卡视频| av午夜精品一区二区三区| 国产成人一区二区精品非洲| 激情亚洲综合在线| 国内精品免费在线观看| 精品午夜一区二区三区在线观看| 久久福利视频一区二区| 伦理电影国产精品| 精品一区二区三区在线观看国产| 日韩成人免费看| 日韩国产精品久久久| 日韩精品欧美精品| 久久精品国产99国产| 国内偷窥港台综合视频在线播放| 精品亚洲国产成人av制服丝袜| 精品一区二区在线视频| 国产一区二区三区综合| 粉嫩嫩av羞羞动漫久久久 | 午夜免费欧美电影| 日韩精品一级中文字幕精品视频免费观看 | 91在线丨porny丨国产| 色一情一乱一乱一91av| 欧美日韩色一区| 日韩视频免费观看高清完整版在线观看| 欧美日韩和欧美的一区二区| 在线观看91精品国产麻豆| 精品电影一区二区三区| 亚洲国产经典视频| 亚洲欧美偷拍另类a∨色屁股| 亚洲精品国产视频| 蜜桃视频在线观看一区二区| 国产精品资源在线| 91麻豆免费看片| 成人午夜av在线| 欧美亚洲尤物久久| 精品日本一线二线三线不卡| 久久精品视频一区二区三区| 国产精品电影院| 日韩avvvv在线播放| 国产成人高清在线| 欧美私模裸体表演在线观看| 精品粉嫩aⅴ一区二区三区四区| 国产精品久久看| 石原莉奈一区二区三区在线观看| 国产毛片精品视频| 91免费国产在线| 26uuuu精品一区二区| 一区二区在线观看不卡| 欧美aaa在线| 色94色欧美sute亚洲线路一久| 精品美女在线播放| 亚洲精品国产品国语在线app| 久久精品国产久精国产| 91久久人澡人人添人人爽欧美| 欧美成人高清电影在线| 亚洲一区影音先锋| 成人精品在线视频观看| 精品三级在线观看| 首页综合国产亚洲丝袜|