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

📄 guidev_cmpwithlcd.c

📁 在ucos上实现了图形用户接口GUI;值得一看
💻 C
字号:
/***********************************************************************************************************                                                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        : GUIDevRB.CPurpose     : Implementation of Checking for memory devices----------------------------------------------------------------------Version-Date---Author-Explanation----------------------------------------------------------------------1.00    000418 RS     First version for release (all tests O.K.)---------------------------END-OF-HEADER------------------------------*/#include <string.h>#include "GUI_Private.h"#include "GUIDebug.h"/* Memory device capabilities are compiled only if support for them is enabled.*/ #if GUI_SUPPORT_MEMDEV/*      *************************************************      *                                               *      *             CompareWithLCD                    *      *                                               *      **************************************************/int GUI_MEMDEV_CompareWithLCD(GUI_MEMDEV_Handle hMem, int*px, int*py, int *pExp, int*pAct) {  /* Make sure memory handle is valid */  if (!hMem) {    hMem = GUI_Context.hDevData;  }  if (!hMem) {    return 1;  }  {    GUI_MEMDEV* pDevData = (GUI_MEMDEV*) GUI_ALLOC_LOCK(hMem);  /* Convert to pointer */    int y     = pDevData->y0;    int x0    = pDevData->x0;    int XMax  = pDevData->XSize+x0;    int YMax  = pDevData->YSize+y;    int Max;    int MagX = LCD_GetXMag();    int MagY = LCD_GetYMag();    /* Calculate limits */    if (y < 0)			y=0;    if (x0 < 0)			x0=0;    Max = LCD_GET_YSIZE();		if (YMax > Max)			YMax = Max;    Max = LCD_GET_XSIZE();		if (XMax > Max)			XMax = Max;    for (; y < YMax; y++) {      int x=x0;      LCD_PIXELINDEX* pData = GUI_MEMDEV_XY2PTR(x,y);      for (x=x0; x<XMax; x++) {        int Exp = *pData++;        int Act = LCD_L0_GetPixelIndex(x * MagX, y * MagY);        if (Act != Exp) {          *px    = x;          *py    = y;          *pAct  = Act;          *pExp  = Exp;          return 1;        }      }    }  }  GUI_ALLOC_UNLOCK(hMem);  return 0;}void GUIDEV_CmpWithLCD(void) {}#elsevoid GUIDEV_CmpWithLCD(void) {} /* avoid empty object files */#endif /* GUI_SUPPORT_MEMDEV */

⌨️ 快捷键说明

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