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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? guidemo_touch.c

?? UC_GUI開發(fā)源代碼,里面含有范例,源文件
?? 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        : GUIDEMO_Touch
Purpose     : Touch demo
---------------------------END-OF-HEADER------------------------------
*/

#include "GUI.h"
#include "LCD_ConfDefaults.h"      /* valid LCD configuration */
#include "GUIDEMO.h"

#if (GUI_WINSUPPORT && GUI_SUPPORT_TOUCH)

#include "BUTTON.h"
#include "EDIT.h"

#define countof(Obj) (sizeof(Obj)/sizeof(Obj[0]))

/*********************************************************************
*
*       Static functions
*
**********************************************************************
*/

static int _Log2Phys(int l, I32 l0, I32 l1, I32 p0, I32 p1) {
  return p0 + ((p1 - p0) * (l - l0)) / (l1 - l0);
}

static void _Calibrate(int Coord, int Log0, int Log1, int Phys0, int Phys1, int *p0, int *p1) {
  int l0 = 0;
  int l1 = (Coord == GUI_COORD_X) ? LCD_XSIZE - 1 : LCD_YSIZE - 1;
  *p0 = _Log2Phys(l0, Log0, Log1, Phys0, Phys1);
  *p1 = _Log2Phys(l1, Log0, Log1, Phys0, Phys1);
}

/*********************************************************************
*
*       _ExecCalibration
*
**********************************************************************
*/

void _ExecCalibration(void) {
  int ax_Phys[2],ay_Phys[2];
/* calculate log. Positions */
  int ax[2] = { 15, LCD_XSIZE -1-15};
//  const int ay[2] = { 15, LCD_YSIZE-1-15};
  int ay[2] = { LCD_YSIZE-1-15, 15};
  GUI_TOUCH_SetDefaultCalibration();
/* _Calibrate upper left */
  GUI_SetBkColor(GUI_RED);  
  GUI_Clear();
  GUI_SetColor(GUI_WHITE);  GUI_FillCircle(ax[0], ay[0], 10);
  GUI_SetColor(GUI_RED);    GUI_FillCircle(ax[0], ay[0], 5);
  GUI_SetColor(GUI_WHITE);
  GUI_DispStringAt("Press here", ax[0]+20, ay[0]);
  do {
    GUI_PID_STATE State;
    GUI_TOUCH_GetState(&State);
    if (State.Pressed) {
      ax_Phys[0] = GUI_TOUCH_GetxPhys();
      ay_Phys[0] = GUI_TOUCH_GetyPhys();
      break;
    }
    GUI_Delay (100);
  } while (1);
/* Tell user to release */
  GUI_Clear();
  GUI_DispStringAt("OK", ax[0]+20, ay[0]);
  do {
    GUI_PID_STATE State;
    GUI_TOUCH_GetState(&State);
    if (State.Pressed == 0) {
      break;
    }
    GUI_Delay (100);
  } while (1);
/* _Calibrate lower right */
  GUI_SetBkColor(GUI_RED);  
  GUI_Clear();
  GUI_SetColor(GUI_WHITE);  GUI_FillCircle(ax[1], ay[1], 10);
  GUI_SetColor(GUI_RED);    GUI_FillCircle(ax[1], ay[1], 5);
  GUI_SetColor(GUI_WHITE);
  GUI_SetTextAlign(GUI_TA_RIGHT);
  GUI_DispStringAt("Press here", ax[1]-20, ay[1]);
  do {
    GUI_PID_STATE State;
    GUI_TOUCH_GetState(&State);
    if (State.Pressed) {
      ax_Phys[1] = GUI_TOUCH_GetxPhys();
      ay_Phys[1] = GUI_TOUCH_GetyPhys();
      break;
    }
    GUI_Delay (100);
  } while (1);
  GUI_TOUCH_Calibrate(GUI_COORD_X, ax[0], ax[1], ax_Phys[0], ax_Phys[1]);
  GUI_TOUCH_Calibrate(GUI_COORD_Y, ay[0], ay[1], ay_Phys[0], ay_Phys[1]);
  { /* calculate and display values for configuration file */
    int x0, x1;
    int y0, y1;
    GUI_Clear();
    _Calibrate(GUI_COORD_X, ax[0], ax[1], ax_Phys[0], ax_Phys[1], &x0, &x1);
    _Calibrate(GUI_COORD_Y, ay[0], ay[1], ay_Phys[0], ay_Phys[1], &y0, &y1);
    GUI_DispStringAt("x0: ", 0, 0); GUI_DispDec(x0, 4); GUI_DispNextLine();
    GUI_DispString  ("x1: ");       GUI_DispDec(x1, 4); GUI_DispNextLine();
    GUI_DispString  ("y0: ");       GUI_DispDec(y0, 4); GUI_DispNextLine();
    GUI_DispString  ("y1: ");       GUI_DispDec(y1, 4); GUI_DispNextLine();
    GUI_DispString  ("Please touch display to continue...");
    GUI_Delay(1000);
    do {
      GUI_PID_STATE State;
      GUI_TOUCH_GetState(&State);
      if (State.Pressed)
        break;
      GUI_Delay (10);
    } while (1);
  }
}

/*********************************************************************
*
*       _TestCalibration
*
**********************************************************************
*/

void _TestCalibration(void) {
  int IdleCnt=0;
  BUTTON_Handle hButton;
  GUI_SetBkColor(GUI_RED);  
  GUI_SetColor(GUI_WHITE);  
  GUI_Clear();
  hButton =  BUTTON_Create( 225, 15, 80, 40, 1, BUTTON_CF_SHOW );
  BUTTON_SetText (hButton, "ABORT");
  BUTTON_SetFont (hButton, &GUI_FontComic18B_ASCII);
  while ((IdleCnt<50) && (GUI_GetKey()==0)) {
    static GUI_PID_STATE StateLast;
    GUI_PID_STATE State;
    GUI_TOUCH_GetState(&State);
    if ((StateLast.Pressed != State.Pressed) && (State.Pressed == 0)) {
      GUI_Clear();
    }
    if ((StateLast.x != State.x) || ((StateLast.y != State.y))) {
      if (State.Pressed) {
        GUI_FillCircle(State.x, State.y, 5);
      }
      StateLast = State;
    }
    if (State.Pressed) {
      IdleCnt =0;
    } else {
      IdleCnt++;
    }
    GUI_Delay (100);
  }
  EDIT_Delete(hButton);
}

/*********************************************************************
*
*       _ExecKeyboard
*
**********************************************************************

This creates a sample keyboard.
The routine returns after ENTER or ESC has been pressed.
*/

#if (LCD_XSIZE == 320) && (LCD_YSIZE == 240)

static char _acText[] = { '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '='
                        ,0, 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P'
                        ,0, 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', 'Q'
                        ,0, 'Z', 'X', 'C', 'V', 'B', 'N', 'M', '

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
免费高清视频精品| 国产精品久久久久天堂| 免费国产亚洲视频| 精品国产一区二区三区不卡 | 麻豆精品久久精品色综合| 欧美军同video69gay| 天天色天天操综合| 精品少妇一区二区三区日产乱码 | 国产成人亚洲综合a∨婷婷| 精品国产伦一区二区三区观看方式| 久久成人久久爱| 久久久91精品国产一区二区精品| 成人免费高清在线| 一区二区高清免费观看影视大全| 日本乱码高清不卡字幕| 午夜视频在线观看一区二区三区| 91麻豆精品国产91久久久更新时间 | 一区二区三区中文字幕电影| 欧美三电影在线| 蜜桃av噜噜一区二区三区小说| 精品88久久久久88久久久| 国产a区久久久| 亚洲黄色小说网站| 欧美电影免费观看高清完整版| 国产在线精品免费| 亚洲日本成人在线观看| 欧美日韩国产成人在线91| 精品无码三级在线观看视频| 国产精品久久久久久久久动漫| 在线欧美日韩精品| 狠狠色丁香九九婷婷综合五月| 国产精品你懂的| 欧美日韩一区二区电影| 国产麻豆日韩欧美久久| 亚洲一区二区三区国产| 久久久久久久综合色一本| 欧美三级日韩三级| 成人黄色小视频| 麻豆传媒一区二区三区| 亚洲欧洲av一区二区三区久久| 欧美顶级少妇做爰| 91免费在线播放| 精品一区二区成人精品| 亚洲免费在线播放| 国产亚洲人成网站| 日韩视频在线永久播放| 91丨九色丨尤物| 国产精品综合在线视频| 午夜精品久久一牛影视| 国产精品不卡在线| 久久久久久久综合日本| 91精品国产综合久久国产大片| 91蜜桃免费观看视频| 国产毛片精品视频| 麻豆国产精品777777在线| 亚洲二区在线观看| 亚洲欧美电影院| 中文字幕高清不卡| 久久久综合视频| 91精品国产丝袜白色高跟鞋| 欧美影院一区二区| 97精品电影院| 成人av影视在线观看| 九一九一国产精品| 老司机午夜精品| 日本午夜精品一区二区三区电影| 亚洲一区在线视频观看| 中文字幕亚洲在| 日本一区二区高清| 国产人成亚洲第一网站在线播放| 精品国产电影一区二区| 欧美大尺度电影在线| 91精品国产一区二区人妖| 欧美日韩免费观看一区三区| 99久久精品国产导航| 成人免费毛片嘿嘿连载视频| 精品一二三四区| 国产精品一区免费在线观看| 麻豆国产一区二区| 久久国产尿小便嘘嘘| 老司机精品视频线观看86| 日本不卡的三区四区五区| 午夜精品影院在线观看| 日韩成人dvd| 美女视频网站黄色亚洲| 男女性色大片免费观看一区二区| 天堂成人免费av电影一区| 午夜影院久久久| 午夜影院久久久| 蜜桃免费网站一区二区三区| 精品无人区卡一卡二卡三乱码免费卡 | 日日摸夜夜添夜夜添亚洲女人| 性做久久久久久免费观看| 天堂蜜桃一区二区三区| 久久国产免费看| 国产99久久久国产精品| 成人禁用看黄a在线| 色综合色综合色综合色综合色综合| 99久久久精品| 欧美亚洲综合久久| 91精品蜜臀在线一区尤物| 91精品国产91久久综合桃花 | 国产亚洲成av人在线观看导航| 亚洲国产精品av| 亚洲一区在线观看免费| 日韩影院在线观看| 国产在线观看免费一区| 成人理论电影网| 欧美三级日韩三级| 欧美精品一区二区三区久久久| 国产日产精品1区| 亚洲免费观看高清在线观看| 亚洲一区在线观看网站| 男人的j进女人的j一区| 丁香亚洲综合激情啪啪综合| 色网综合在线观看| 日韩一区二区三区av| 国产日韩欧美精品电影三级在线| 一区二区三区在线视频观看58| 五月婷婷久久综合| 国产成人av一区二区三区在线观看| 不卡的av在线播放| 欧美视频一区二区在线观看| 精品国产91洋老外米糕| 亚洲色图.com| 久久精品国产一区二区| 91日韩在线专区| 日韩欧美成人午夜| 亚洲视频综合在线| 激情五月婷婷综合| 色女孩综合影院| 国产欧美一区二区精品仙草咪| 一区二区三区精密机械公司| 精品一区二区三区视频在线观看| 99久久夜色精品国产网站| 51午夜精品国产| 亚洲欧美成aⅴ人在线观看| 国产在线观看免费一区| 欧美日韩和欧美的一区二区| 亚洲国产成人私人影院tom| 日韩国产高清在线| 一本大道av一区二区在线播放| 久久人人97超碰com| 亚洲成人动漫一区| 99这里只有精品| 久久久久久久久久久黄色| 亚洲成av人片一区二区三区| 成人污污视频在线观看| 日韩免费观看高清完整版 | 51精品视频一区二区三区| 一二三四区精品视频| 国产suv精品一区二区三区| 91麻豆精品国产91久久久久久久久| 亚洲人成伊人成综合网小说| 成人一级片在线观看| 精品国产凹凸成av人导航| 日韩精品色哟哟| 在线观看日韩电影| 中文字幕制服丝袜成人av| 国产福利电影一区二区三区| 精品对白一区国产伦| 欧美aaa在线| 欧美一区二区福利视频| 婷婷六月综合网| 欧美老年两性高潮| 亚洲一区自拍偷拍| 欧美午夜精品一区二区三区| 亚洲精品一卡二卡| 91福利国产精品| 一区二区高清免费观看影视大全| 色偷偷久久一区二区三区| 亚洲你懂的在线视频| 91麻豆国产精品久久| 亚洲视频1区2区| 91在线云播放| 一区二区三区美女视频| 色国产综合视频| 亚洲品质自拍视频| 色激情天天射综合网| 亚洲高清三级视频| 欧美高清视频一二三区| 视频一区二区不卡| 精品女同一区二区| 国产乱码字幕精品高清av | 欧美成人乱码一区二区三区| 毛片av一区二区| 精品女同一区二区| 国产成人在线视频网站| 国产精品久久久久久久裸模 | 欧美巨大另类极品videosbest | 久久久久青草大香线综合精品| 国产一区二区三区四| 中文字幕va一区二区三区| 91香蕉视频mp4| 亚洲国产精品久久人人爱| 欧美一区二区视频网站| 国产在线日韩欧美| 亚洲欧洲精品一区二区三区不卡| 欧美亚洲尤物久久| 久久不见久久见免费视频7|