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

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

?? lcd13xx.c

?? 汽車綜合監控儀——廣東省大學生電子設計大賽作品 (獲一等獎) 使用技術:ARM9(S3C2440)
?? C
?? 第 1 頁 / 共 5 頁
字號:
/***********************************************************************************************************                                                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        : LCD13XX.CPurpose     : Driver for LCDs using a single Seiko Epson SED13XX controllers              This version supports a single LCD controller              in (almost) any hardware configuration. The following              derivatives are currently supported:              SED1352              SED1354              SED1356     (With/Without BitBlt engine support)              SED1374              SED1375              SED13806              Other Epson LCD controllers are very similar and could              be covered by this driver as well, but have not been              tested.----------------------------------------------------------------------   ---------------------------LIST OF CONFIG SWITCHES--------------------The following is a list of additional configuration switches for thisdriver. These switches might not be listed in the manual, becausethe manual mainly covers the general config switches which aresupported by all drivers.----------------------------------------------------------------------define ----------------------Explanation------------------------------LCD_SWAP_BYTE_ORDER          Activate if high low bytes are swapped                             Default: 0LCD_WRITE_MEM32(Off,Data32)  This macro accelerates display access                             if defined by allowing the CPU to write                             32 bits at a time to the controller.                             (For 32 bits CPUs only and only if the                             BUS interface unit can automatically                             convert this to 2 16 bit accessesLCD_OPTIMIZE                 Controls the use of optimized routines.                             If 1, several (speed) optimizations are used.                             Default: ON (1)LCD_USE_BITBLT               This switch controls the use of optimized routines                              with SED1356 bitblt engine.                             If 1, the optimized routines with bitblt access are used.                             The default value depends of LCD_BITSPERPIXEL: (4  ) -> 0, (8,15) -> 1LCD_ENABLE_REG_ACCESS()    LCD_ENABLE_MEM_ACCESS()      In most systems (and with most LCD-controllers)                             registers / memory can be accessed at                             different addresses. However, in some                             systems, it could be necessary to exec                             code in order to be able to access the                             registers or memory. This code should                             then be placed in these macros (rather                             than the actual access macros, which                             would be slowed down)LCD_DATAADR                  define adress if video memory can be treated                             like regular memory                             (will speed up driver)----------------------------------------------------------------------Known problems or limitations with current version----------------------------------------------------------------------none----------------------------------------------------------------------Open issues----------------------------------------------------------------------None---------------------------END-OF-HEADER------------------------------*/#include <stddef.h>           /* needed for definition of NULL */#include "LCD_Private.H"      /* private modul definitions & config */#include "GUI_Private.H"#include "GUIDebug.h"#include "LCD_0.h"            /* Defines for first display */#include "lcdd.h"//extern   U32 (*frameBuffer16BitTft240320)[SCR_XSIZE_TFT_240320];//extern  U16  LCD_Buffer [LCD_XSIZE*LCD_YSIZE];//extern   void WriteLcdMems( unsigned int off  , unsigned int  c ) ; /*#define LCD_READ_MEM(Off) 			*(((U16*) ((U32)LCD_BUFFER+(((U32)(Off))<<1))))#define LCD_WRITE_MEM(Off,data) 	*(((U16*) ((U32)LCD_BUFFER+(((U32)(Off))<<1))))=data#define LCD_READ_REG(Off)		    0#define LCD_WRITE_REG(Off,data) 	*/// 對 Video RAM 區的讀寫操作.//#define LCD_READ_MEM(Off)            LCD_BUFFER[Off/240][Off%240] //&0x0000ffff //#define LCD_WRITE_MEM(Off,data)      PutPixel( Off/240,Off%240, data )  //#define LCD_READ_REG(Off)            0//#define LCD_WRITE_REG(Off,data)      #if (LCD_CONTROLLER/100 == 13) && (LCD_CONTROLLER/10 != 133) \      && (!defined(WIN32) | defined(LCD_SIMCONTROLLER))/*        *********************************************************        *                                                       *        *           Compiler specific settings                  *        *                                                       *        **********************************************************/#ifdef WIN32   /* Avoid warnings in MS-compiler */  #pragma warning(disable : 4244)  // warning C4244: '=' : conversion from 'long ' to 'unsigned char ', possible loss of data  #pragma warning(disable : 4761)  // warning C4761: integral size mismatch in argument; conversion supplied#endif/************************************************************           Controller renumbering**********************************************************  EPSON decided to rename all of their controllers. In order to  be able to work with old and new numbers, we simply map the old ones  to the new ones.*/#if LCD_CONTROLLER == 1386  #undef LCD_CONTROLLER  #define LCD_CONTROLLER 13806#endif/*        *********************************************************        *                                                       *        *           Defaults for configuration                  *        *                                                       *        **********************************************************//* Switch for support of multiple pages. Only available with certain LCD-controllers */#ifndef LCD_SUPPORT_PAGING  #define LCD_SUPPORT_PAGING            (0)#endif#ifndef LCD_SCHEDULE_CNT  #define LCD_SCHEDULE_CNT              (0)#endif#ifndef LCD_NUM_CONTROLLERS  #define LCD_NUM_CONTROLLERS           (1)#endif#ifndef LCD_BUSWIDTH  #define LCD_BUSWIDTH                  (16)#endif#ifndef LCD_OPTIMIZE  #define LCD_OPTIMIZE                (1)#endif#if (LCD_CONTROLLER == 1356) || (LCD_CONTROLLER == 13806)  #ifndef LCD_USE_BITBLT    #if ((LCD_BITSPERPIXEL == 16) || (LCD_BITSPERPIXEL == 8 )) && (LCD_MIRROR_Y == 0) && (LCD_SWAP_XY  == 0)      #define LCD_USE_BITBLT            (1)    #else      #define LCD_USE_BITBLT            (0)    #endif  #else    #if (LCD_MIRROR_Y)      #error BITBLT engine does not support LCD_MIRROR_Y = 1!    #endif    #if (LCD_SWAP_XY)      #error BITBLT engine does not support LCD_SWAP_XY = 1!    #endif  #endif#else  #define LCD_USE_BITBLT                (0)#endif#ifndef LCD_ENABLE_REG_ACCESS  #define LCD_ENABLE_REG_ACCESS()#endif#ifndef LCD_ENABLE_MEM_ACCESS  #define LCD_ENABLE_MEM_ACCESS()#endif#ifndef STATIC  #define STATIC static#endif/*        *********************************************************        *                                                       *        *           Defines for configuration simulation        *        *                                                       *        **********************************************************/#if defined(WIN32) && !defined(USE_PC_HARDWARE)  void SIM_WriteMem8(unsigned int Off, int Data);  void SIM_WriteReg8(unsigned int Off, int Data);  int  SIM_ReadMem8(unsigned int Off);  int  SIM_ReadReg8(unsigned int Off);  void SIM_WriteMem16(unsigned int Off, int Data);  void SIM_WriteReg16(unsigned int Off, int Data);  int  SIM_ReadMem16(unsigned int Off);  int  SIM_ReadReg16(unsigned int Off);  #undef  LCD_READ_MEM  #undef  LCD_READ_REG  #undef  LCD_WRITE_MEM  #undef  LCD_WRITE_REG  #if LCD_BUSWIDTH==8    #define LCD_READ_MEM(Off)       SIM_ReadMem8(Off)    #define LCD_WRITE_MEM(Off,Data) SIM_WriteMem8(Off, Data)    #define LCD_READ_REG(Off)       SIM_ReadReg8(Off)    #define LCD_WRITE_REG(Off,Data) SIM_WriteReg8(Off, Data)  #elif LCD_BUSWIDTH==16    #define LCD_READ_MEM(Off)       SIM_ReadMem16(Off)    #define LCD_WRITE_MEM(Off,Data) SIM_WriteMem16(Off, Data)    #define LCD_READ_REG(Off)       SIM_ReadReg16(Off)    #define LCD_WRITE_REG(Off,Data) SIM_WriteReg16(Off, Data)  #endif#elif defined(WIN32) && defined(USE_PC_HARDWARE)  void PC_WriteMem8(unsigned int Off, int Data);  void PC_WriteReg8(unsigned int Off, int Data);  int  PC_ReadMem8(unsigned int Off);  int  PC_ReadReg8(unsigned int Off);  void PC_WriteMem16(unsigned int Off, int Data);  void PC_WriteReg16(unsigned int Off, int Data);  int  PC_ReadMem16(unsigned int Off);  int  PC_ReadReg16(unsigned int Off);  #undef  LCD_READ_MEM  #undef  LCD_READ_REG  #undef  LCD_WRITE_MEM  #undef  LCD_WRITE_REG  #if LCD_BUSWIDTH==8    #define LCD_READ_MEM(Off)       PC_ReadMem8(Off)    #define LCD_WRITE_MEM(Off,Data) PC_WriteMem8(Off, Data)    #define LCD_READ_REG(Off)       PC_ReadReg8(Off)    #define LCD_WRITE_REG(Off,Data) PC_WriteReg8(Off, Data)  #else    #define LCD_READ_MEM(Off)       PC_ReadMem16(Off)    #define LCD_WRITE_MEM(Off,Data) PC_WriteMem16(Off, Data)    #define LCD_READ_REG(Off)       PC_ReadReg16(Off)    #define LCD_WRITE_REG(Off,Data) PC_WriteReg16(Off, Data)  #endif#endif/**********************************************************           Remap Hardware macros***********************************************************/#if LCD_NUM_DISPLAYS ==1 /* Use single display macros */#else  #if LCD_DISPLAY_INDEX == 0     /* First display in a multi-display configuration */    #define LCD_READ_MEM(Off)       LCD_READ_MEM_0(Off)    #define LCD_WRITE_MEM(Off,Data) LCD_WRITE_MEM_0(Off,Data)    #define LCD_READ_REG(Off)       LCD_READ_REG_0(Off)    #define LCD_WRITE_REG(Off,Data) LCD_WRITE_REG_0(Off,Data)    #define LCD_INIT_CONTROLLER     LCD_INIT_CONTROLLER_0  #else    #define LCD_READ_MEM(Off)       LCD_READ_MEM_1(Off)    #define LCD_WRITE_MEM(Off,Data) LCD_WRITE_MEM_1(Off,Data)    #define LCD_READ_REG(Off)       LCD_READ_REG_1(Off)    #define LCD_WRITE_REG(Off,Data) LCD_WRITE_REG_1(Off,Data)    #define LCD_INIT_CONTROLLER     LCD_INIT_CONTROLLER_1  #endif#endif/*        *********************************************************        *                                                       *        *          Internal types                               *        *                                                       *        **********************************************************//*        *********************************************************        *                                                       *        *          SCHEDULING                                   *        *                                                       *        **********************************************************/#if (LCD_SCHEDULE_CNT !=0)  static int ScheduleCntRem=LCD_SCHEDULE_CNT;  #define CHECK_SCHEDULE(PixelCnt)                              \          if ((ScheduleCntRem-=(PixelCnt)) <=0) {               \            ScheduleCntRem=LCD_SCHEDULE_CNT;                    \            LCD_SCHEDULE();                                     \          }#else  #define CHECK_SCHEDULE(PixelCnt)#endif/*        *********************************************************        *                                                       *        *           Macro calculations                          *        *                                                       *        **********************************************************//* To make life easier, assign physical x/y size */#if !LCD_SWAP_XY  #define LCD_XSIZE_P   LCD_XSIZE  #define LCD_YSIZE_P   LCD_YSIZE  #define LCD_VXSIZE_P  LCD_VXSIZE  #define LCD_VYSIZE_P  LCD_VYSIZE#else  #define LCD_XSIZE_P   LCD_YSIZE  #define LCD_YSIZE_P   LCD_XSIZE  #define LCD_VXSIZE_P  LCD_VYSIZE  #define LCD_VYSIZE_P  LCD_VXSIZE#endif#if   LCD_BITSPERPIXEL == 1  #define BYTESPERLINE  (LCD_VXSIZE_P/8)  #define WORDSPERLINE  (LCD_VXSIZE_P/16)#elif   LCD_BITSPERPIXEL == 2  #define BYTESPERLINE  (LCD_VXSIZE_P/4)  #define WORDSPERLINE  (LCD_VXSIZE_P/8)#elif   LCD_BITSPERPIXEL == 4  #define BYTESPERLINE  (LCD_VXSIZE_P/2)  #define WORDSPERLINE  (LCD_VXSIZE_P/4)#elif LCD_BITSPERPIXEL == 8  #define BYTESPERLINE  (LCD_VXSIZE_P)  #define WORDSPERLINE  (LCD_VXSIZE_P/2)#elif  (LCD_BITSPERPIXEL == 15)  #define BYTESPERLINE  (LCD_VXSIZE_P*2)  #define WORDSPERLINE  (LCD_VXSIZE_P)#elif  (LCD_BITSPERPIXEL == 16)  #define BYTESPERLINE  (LCD_VXSIZE_P*2)  #define WORDSPERLINE  (LCD_VXSIZE_P)#else  #error This colordepth is not supported !!!#endif#ifndef LCD_USE_32BIT_OFF  #if ((WORDSPERLINE * LCD_YSIZE) > 0xFFFF)    #define LCD_USE_32BIT_OFF 1  #else    #define LCD_USE_32BIT_OFF 0  #endif#endif#if LCD_USE_32BIT_OFF  typedef unsigned long tOff;#else  typedef unsigned int  tOff;#endif/*        *********************************************************        *                                                       *        *              Macros, standard                         *        *                                                       *        *********************************************************These macros can be found in any LCD-driver as they serve purposesthat can be found in any class of LCD-driver (Like clipping).*/#define BKCOLOR LCD_BKCOLORINDEX#define   COLOR LCD_COLORINDEX/*        *********************************************************        *                                                       *        *      Configuration switch checking                    *        *                                                       *        *********************************************************Please be aware that not all configuration errors can be captured !*//* Check number of controllers */#if ((LCD_NUM_CONTROLLERS >1) || (LCD_NUM_CONTROLLERS <0))  #error "More than 1 controller not supported by this driver"#endif#if ((LCD_CONTROLLER==1356)||(LCD_CONTROLLER==13806)) && (LCD_BUSWIDTH !=16)  #error This controller does not work with 8-bit bus#endif#if (((LCD_CONTROLLER==1356)||(LCD_CONTROLLER==13806)) && LCD_USE_BITBLT && ((LCD_BITSPERPIXEL != 8) && (LCD_BITSPERPIXEL != 16)))  #error BitBlt-Access only available for 8bpp and 16bpp mode#endif#if (LCD_CONTROLLER==1374)  #if (LCD_BITSPERPIXEL == 8)    #if (LCD_FIXEDPALETTE != 233)      #error This controller supports only 233 palette in 8 bpp mode !    #endif  #endif#endif/*        *********************************************************        *                                                       *        *       Macros for internal use                         *        *                                                       *        **********************************************************/#if !defined (LCD_LUT_COM)  #define LINE2COM(y) y#else  #define LINE2COM(y) LCD__aLine2Com0[y]#endif#if LCD_BUSWIDTH == 16  #if   (LCD_BITSPERPIXEL == 16)    #define XY2OFF(x,y)    (tOff)((tOff)LINE2COM(y)*(tOff)WORDSPERLINE+(x))  #elif (LCD_BITSPERPIXEL == 15)    #define XY2OFF(x,y)    (tOff)((tOff)LINE2COM(y)*(tOff)WORDSPERLINE+(x))  #elif (LCD_BITSPERPIXEL ==  8)    #define XY2OFF(x,y)    (tOff)((tOff)LINE2COM(y)*(tOff)WORDSPERLINE+(x>>1))  #elif (LCD_BITSPERPIXEL ==  4)    #define XY2OFF(x,y)    (tOff)((tOff)LINE2COM(y)*(tOff)WORDSPERLINE+(x>>2))  #elif (LCD_BITSPERPIXEL ==  2)    #define XY2OFF(x,y)    (tOff)((tOff)LINE2COM(y)*(tOff)WORDSPERLINE+((x)>>3))  #elif (LCD_BITSPERPIXEL ==  1)    #define XY2OFF(x,y)    (tOff)((tOff)LINE2COM(y)*(tOff)WORDSPERLINE+((x)>>4))  #endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久久久久久久久久久久女国产乱 | 日本精品视频一区二区三区| 久久精品视频一区二区| 久久精品国产77777蜜臀| 欧美电影免费观看完整版| 九一久久久久久| 久久精品亚洲乱码伦伦中文| 成人性色生活片| 《视频一区视频二区| 色诱视频网站一区| 三级久久三级久久| 精品国产三级电影在线观看| 丁香六月久久综合狠狠色| 国产精品国产三级国产有无不卡| 色综合久久久久| 首页国产丝袜综合| 久久夜色精品国产欧美乱极品| 成人免费三级在线| 亚洲成人第一页| xnxx国产精品| 色综合婷婷久久| 麻豆精品在线观看| 成人免费在线视频| 日韩欧美亚洲另类制服综合在线| 高清shemale亚洲人妖| 樱花草国产18久久久久| 日韩欧美国产综合一区| 不卡的电视剧免费网站有什么| 亚洲国产欧美日韩另类综合| 2023国产一二三区日本精品2022| 91网站最新地址| 麻豆视频一区二区| 亚洲精品国产一区二区三区四区在线| 日韩欧美综合一区| 色婷婷亚洲一区二区三区| 久久不见久久见免费视频1| 自拍偷拍欧美精品| 精品国产免费一区二区三区四区| 色噜噜久久综合| 福利91精品一区二区三区| 视频一区二区中文字幕| 国产精品二区一区二区aⅴ污介绍| 日韩丝袜美女视频| 在线免费亚洲电影| 成人蜜臀av电影| 国产在线精品免费av| 五月婷婷激情综合| 亚洲猫色日本管| 久久久青草青青国产亚洲免观| 欧美唯美清纯偷拍| 波多野结衣亚洲| 国产一区二区三区视频在线播放| 亚洲一区在线视频观看| 中文字幕一区在线观看视频| 欧美变态凌虐bdsm| 正在播放亚洲一区| 欧美亚洲日本国产| 91色乱码一区二区三区| 成人免费毛片片v| 国产夫妻精品视频| 国内偷窥港台综合视频在线播放| 午夜伊人狠狠久久| 一区二区欧美国产| 日韩理论片中文av| 国产精品免费观看视频| 2020国产精品| 久久亚洲精华国产精华液 | 色婷婷久久久久swag精品| 国产一区二区三区av电影| 日本最新不卡在线| 亚洲愉拍自拍另类高清精品| 中文字幕字幕中文在线中不卡视频| 国产日本一区二区| 国产亚洲欧美激情| 久久精品一二三| 国产三区在线成人av| 久久亚洲综合色| 国产欧美日韩视频一区二区 | 中文字幕国产精品一区二区| 精品成人在线观看| 精品av综合导航| 2020国产精品自拍| 欧美高清在线一区二区| 中文字幕亚洲一区二区va在线| 国产精品久久久久aaaa樱花 | 久久久精品免费免费| 久久九九影视网| 国产精品丝袜黑色高跟| 中文字幕一区二区三区av| 国产精品免费av| 亚洲久本草在线中文字幕| 一区二区三区四区中文字幕| 亚洲国产中文字幕在线视频综合| 亚洲成人黄色影院| 日韩电影免费在线看| 国产一区二区三区免费看| 成人国产一区二区三区精品| 91黄色免费看| 日韩一区二区电影在线| 2020国产精品自拍| 亚洲色图一区二区| 午夜久久久久久久久久一区二区| 老鸭窝一区二区久久精品| 国产成人综合自拍| 一本一道久久a久久精品综合蜜臀| 色老汉一区二区三区| 4438亚洲最大| 国产欧美日韩在线| 亚洲成人资源网| 国产伦精品一区二区三区视频青涩| 国产精品88av| 欧美性大战久久久久久久蜜臀| 欧美一区二区三区系列电影| 久久久精品国产免费观看同学| 亚洲天堂免费看| 免费在线观看日韩欧美| 成人精品高清在线| 欧美日韩一区二区在线观看| 精品久久国产字幕高潮| 1024精品合集| 黄一区二区三区| 91九色最新地址| 日本一区二区视频在线观看| 亚洲精品网站在线观看| 美女性感视频久久| 91论坛在线播放| 久久伊人中文字幕| 日日摸夜夜添夜夜添国产精品| 国产99久久久国产精品| 欧美精品久久天天躁| 亚洲欧洲精品天堂一级| 免费欧美高清视频| 在线观看视频一区二区| 国产无人区一区二区三区| 亚洲成人一二三| 一本色道亚洲精品aⅴ| 国产亚洲一区二区在线观看| 午夜免费久久看| 一本到三区不卡视频| 久久久三级国产网站| 免费在线观看一区二区三区| 欧美在线观看你懂的| 国产精品欧美一级免费| 激情五月播播久久久精品| 欧美精品三级日韩久久| 亚洲一区二区三区影院| 成人动漫视频在线| 国产亚洲福利社区一区| 久久精品国产久精国产| 欧美精品免费视频| 亚洲h动漫在线| 欧美三级欧美一级| 亚洲精品国产成人久久av盗摄| 懂色av一区二区三区蜜臀 | 成人欧美一区二区三区1314| 国产成人精品免费看| 精品入口麻豆88视频| 奇米777欧美一区二区| 欧美老肥妇做.爰bbww视频| 亚洲免费在线播放| 91理论电影在线观看| 亚洲欧美日韩国产手机在线| 91免费观看在线| 亚洲精品网站在线观看| 色婷婷av一区二区三区软件| 亚洲欧美日韩综合aⅴ视频| 成人av网址在线| 亚洲精品成人天堂一二三| 色综合久久久久综合体| 亚洲免费观看高清在线观看| 色综合天天综合网国产成人综合天| 国产精品的网站| 色网综合在线观看| 一区二区三区四区在线| 在线观看免费视频综合| 亚洲sss视频在线视频| 777久久久精品| 韩日精品视频一区| 中文字幕av资源一区| 91在线精品一区二区| 洋洋成人永久网站入口| 777a∨成人精品桃花网| 六月婷婷色综合| 中文字幕精品一区| 色播五月激情综合网| 性做久久久久久免费观看| 欧美一区二区福利在线| 国产精品亚洲一区二区三区妖精 | 亚洲欧洲日韩av| 欧美日韩一卡二卡三卡| 久久精品国产免费看久久精品| 国产午夜精品一区二区三区四区| 91日韩精品一区| 亚洲va欧美va人人爽| 国产亚洲一区二区三区| 在线视频一区二区三区| 免费成人美女在线观看| 国产精品私人影院| 69堂精品视频| 成人aaaa免费全部观看|