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

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

?? touch_panel_custom.c

?? MTK6225
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*****************************************************************************
*  Copyright Statement:
*  --------------------
*  This software is protected by Copyright and the information contained
*  herein is confidential. The software may not be copied and the information
*  contained herein may not be used or disclosed except with the written
*  permission of MediaTek Inc. (C) 2005
*
*  BY OPENING THIS FILE, BUYER HEREBY UNEQUIVOCALLY ACKNOWLEDGES AND AGREES
*  THAT THE SOFTWARE/FIRMWARE AND ITS DOCUMENTATIONS ("MEDIATEK SOFTWARE")
*  RECEIVED FROM MEDIATEK AND/OR ITS REPRESENTATIVES ARE PROVIDED TO BUYER ON
*  AN "AS-IS" BASIS ONLY. MEDIATEK EXPRESSLY DISCLAIMS ANY AND ALL WARRANTIES,
*  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE IMPLIED WARRANTIES OF
*  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE OR NONINFRINGEMENT.
*  NEITHER DOES MEDIATEK PROVIDE ANY WARRANTY WHATSOEVER WITH RESPECT TO THE
*  SOFTWARE OF ANY THIRD PARTY WHICH MAY BE USED BY, INCORPORATED IN, OR
*  SUPPLIED WITH THE MEDIATEK SOFTWARE, AND BUYER AGREES TO LOOK ONLY TO SUCH
*  THIRD PARTY FOR ANY WARRANTY CLAIM RELATING THERETO. MEDIATEK SHALL ALSO
*  NOT BE RESPONSIBLE FOR ANY MEDIATEK SOFTWARE RELEASES MADE TO BUYER'S
*  SPECIFICATION OR TO CONFORM TO A PARTICULAR STANDARD OR OPEN FORUM.
*
*  BUYER'S SOLE AND EXCLUSIVE REMEDY AND MEDIATEK'S ENTIRE AND CUMULATIVE
*  LIABILITY WITH RESPECT TO THE MEDIATEK SOFTWARE RELEASED HEREUNDER WILL BE,
*  AT MEDIATEK'S OPTION, TO REVISE OR REPLACE THE MEDIATEK SOFTWARE AT ISSUE,
*  OR REFUND ANY SOFTWARE LICENSE FEES OR SERVICE CHARGE PAID BY BUYER TO
*  MEDIATEK FOR SUCH MEDIATEK SOFTWARE AT ISSUE. 
*
*  THE TRANSACTION CONTEMPLATED HEREUNDER SHALL BE CONSTRUED IN ACCORDANCE
*  WITH THE LAWS OF THE STATE OF CALIFORNIA, USA, EXCLUDING ITS CONFLICT OF
*  LAWS PRINCIPLES.  ANY DISPUTES, CONTROVERSIES OR CLAIMS ARISING THEREOF AND
*  RELATED THERETO SHALL BE SETTLED BY ARBITRATION IN SAN FRANCISCO, CA, UNDER
*  THE RULES OF THE INTERNATIONAL CHAMBER OF COMMERCE (ICC).
*
*****************************************************************************/

/*****************************************************************************
 *
 * Filename:
 * ---------
 *    keypad_def.c
 *
 * Project:
 * --------
 *   Maui_Software
 *
 * Description:
 * ------------
 *   This file is defined for keypad table
 *
 * Author:
 * -------
 * -------
 *
 *============================================================================
 *             HISTORY
 * Below this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
 *------------------------------------------------------------------------------
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 *
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 * removed!
 *
 *------------------------------------------------------------------------------
 * Upper this line, this part is controlled by PVCS VM. DO NOT MODIFY!!
 *============================================================================
 ****************************************************************************/
#if defined(TOUCH_PANEL_SUPPORT) || defined(HAND_WRITING)
#include "drv_comm.h"
#include "eint.h"
#include "touch_panel_custom.h"
#include "touch_panel.h"
#include    "touch_panel_spi.h"  ///Yh888_6225_V004.B&N002 
//#include    "touch_panel_i2c.h"  //Yh888_6225_V004.B&N001 //qsh

TouchPanel_custom_data_struct  tp_custom_data_def = 
{          
   /*ADC*/
       TOUCH_PANEL_ADC_X_START,   //0
	TOUCH_PANEL_ADC_X_END,     //3968
	TOUCH_PANEL_ADC_Y_START, //0
	TOUCH_PANEL_ADC_Y_END,     //5264
	/*Coord.*/
	TOUCH_PANEL_COORD_X_START,//0
	TOUCH_PANEL_COORD_X_END,   //239
	TOUCH_PANEL_COORD_Y_START, //0
	TOUCH_PANEL_COORD_Y_END,//339
	/*eint level*/
	TOUCH_PANEL_EINT_DOWN_LEVEL   
};

//extern unsigned char gCustomTouchPanelType;
unsigned char gCustomTouchPanelType=1; //Eric Huang 2007/12/19
#define __TOUCH_PANEL_X_COORDINATE_REVERSED__
#define __TOUCH_PANEL_Y_COORDINATE_REVERSED__

#ifdef TOUCH_PANEL_I2C_SUPPORT  ////Yh888_6225_V004.B&N002
#define __TOUCH_PANEL_XY_COORDINATE_REVERSED__
//#include "touch_panel_i2c_extern.h"
#endif

extern I2C_READ_ALL_DATA_TYPE g_i2c_tpReadalldata;//qsh
extern kal_uint16      TP_I2C_X ;
extern kal_uint16      TP_I2C_Y ;
extern kal_uint8	       finger_num;

extern kal_uint8	      tp_tapcode ;
extern kal_uint8	      tp_zoom ;
extern kal_uint8	      tp_flick ;
extern kal_uint8	      tp_press;


void tp_read_adc(kal_int16 *x, kal_int16 *y)
{
char str[100];
   kal_uint8 command=0, retry;        
   kal_int16 temp_x=0, temp_y=0, diff_x=0, diff_y=0;
   kal_uint16 temp;
  // for(retry=0;retry<1;retry++)//qsh
   {		
   	   i2c_tp_ReadAllData() ;
	
       if(finger_num)
	   {
	      *x = TP_I2C_X;
	     *y = TP_I2C_Y;
        }
   	}

}
#ifdef TOUCH_PANEL_PRESSURE
kal_bool tp_pressure_check(void)
{
   
   kal_uint8 command=0, retry;        
   kal_int16 x, z1, z2;
   kal_uint32 pressure;
   
   for(retry=0;retry<TOUCH_PANEL_RETRY;retry++)
   {
      /*X ADC*/
      command=TOUCH_PANEL_START_BIT|TOUCH_PANEL_Y_PLUS|TOUCH_PANEL_12BIT_SAMPLE|
           TOUCH_PANEL_SINGLE_MODE;
      serial_write_data(command);
      x=serial_read_data();   
      //kal_prompt_trace(MOD_TP_TASK, "pressure x value: %d", x);

      /*Z1 ADC*/
      command=TOUCH_PANEL_START_BIT|TOUCH_PANEL_Z1_POS|TOUCH_PANEL_12BIT_SAMPLE|
           TOUCH_PANEL_DIFF_MODE;
      serial_write_data(command);
      z1=serial_read_data();   
      //kal_prompt_trace(MOD_TP_TASK, "pressure z1 value: %d", z1);

      /*Z2 ADC*/
      command=TOUCH_PANEL_START_BIT|TOUCH_PANEL_Z2_POS|TOUCH_PANEL_12BIT_SAMPLE|
           TOUCH_PANEL_DIFF_MODE;
      serial_write_data(command);
      z2=serial_read_data();
      //kal_prompt_trace(MOD_TP_TASK, "pressure z2 value: %d", z2);
      if((z1 > 0) && (z2 > z1))
      {
         pressure = (x*(z2-z1)/z1) >> 2; /* Rx*x/4096*(z2/z1 - 1), assume Rx=1024 */
         //kal_prompt_trace(MOD_TP_TASK, "pressure: %d", pressure);
         //if (pressure > TOUCH_PRESSURE_THRESHOLD2)
           // kal_prompt_trace(MOD_TP_TASK, "pressure is above %d. value: %d", TOUCH_PRESSURE_THRESHOLD2, pressure);
         if ((pressure > TOUCH_PRESSURE_THRESHOLD_HIGH) || (pressure <= TOUCH_PRESSURE_THRESHOLD_LOW))
            return KAL_FALSE; 
         else
            return KAL_TRUE; 
      }
   }
   //kal_prompt_trace(MOD_TP_TASK, "pressure: 0 (no value)");
   return KAL_FALSE;
}
#endif /*TOUCH_PANEL_PRESSURE*/
#ifdef TOUCH_PANEL_I2C_SUPPORT   ////Yh888_6225_V004.B&N002
//#include "touch_panel_i2c_extern.h"
extern kal_uint8  i2c_tp_readflag;
#endif
//extern kal_bool    touch_panel_state;
void tp_irq_enable(kal_bool on)
{
#ifdef TOUCH_PANEL_I2C_SUPPORT  ///////Yh888_6225_V004.B&N002
   if(on==KAL_TRUE)
   {

	i2c_tp_readflag = 1;
 //touch_panel_state =0;
 //EINT_Set_Polarity(TP.eint_chan,touch_panel_state);
   
	
   }
   else
   {

	i2c_tp_readflag = 1;
	//touch_panel_state =1;
  //   EINT_Set_Polarity(TP.eint_chan,touch_panel_state);
   }
#else
   kal_uint8 command=0;   
   kal_uint32 savedMask;
   //savedMask = SaveAndSetIRQMask();
   if(on==KAL_TRUE)
   {
      command=TOUCH_PANEL_START_BIT|TOUCH_PANEL_PWD_ENBLE;               
   }   
   else
   {
      command=TOUCH_PANEL_START_BIT|TOUCH_PANEL_IRQ_DISABLE;
   }  
   serial_write_data(command);
   serial_read_data(); 
   //RestoreIRQMask(savedMask);
#endif
}    

TouchPanel_custom_data_struct *tp_Get_Data(void) 
{
   return (&tp_custom_data_def);
}      
TouchPanel_customize_function_struct tp_custom_func=
{
     tp_Get_Data,
     tp_read_adc,
#ifdef TOUCH_PANEL_PRESSURE
     tp_pressure_check,
#endif
     tp_irq_enable
};            
TouchPanel_customize_function_struct *tp_GetFunc(void)
{
   return (&tp_custom_func);  
}   







/*************************************************************************
 * [Set the config for MMI handwriting pad is enabled]
 *************************************************************************/
#include "MMI_features.h"
#ifdef __MMI_HANDWRITING_PAD__
#include "TouchScreenGprot.h" /* get tp_area_struct declaraction */
#include "kbd_table.h"



/*************************************************************************
 * [Get the calibration point]
 *************************************************************************/
#define NUM_TP_CALIBRATION_POINTS 3
const mmi_pen_point_struct tp_calibration_point[NUM_TP_CALIBRATION_POINTS]={
      {TOUCH_PANEL_CALIBRATION_X_1, TOUCH_PANEL_CALIBRATION_Y_1}, /* top-left point */
      {TOUCH_PANEL_CALIBRATION_X_2, TOUCH_PANEL_CALIBRATION_Y_2}, /* bottom-right point */
      {TOUCH_PANEL_CALIBRATION_X_3, TOUCH_PANEL_CALIBRATION_Y_3}  /* the thrid point */
   };


/*************************************************************************
 * [handwriting pad information setting]
 * Define the coordinate for control areas
 * Below is the reference setting ...
 *************************************************************************/
#if defined(__MMI_MAINLCD_176X220__)
#define TP_SCREEN_ROW_H		(9)
#define TP_SCREEN_ROW_0		(TOUCH_PANEL_COORD_Y_START)
#define TP_SCREEN_ROW_1		(TOUCH_PANEL_COORD_Y_START+10)
#define TP_SCREEN_ROW_2		(TOUCH_PANEL_COORD_Y_START+20)
#define TP_SCREEN_ROW_3		(TOUCH_PANEL_COORD_Y_START+30)
#define TP_SCREEN_ROW_4		(TOUCH_PANEL_COORD_Y_START+40)
#define TP_SCREEN_ROW_5		(TOUCH_PANEL_COORD_Y_START+50)
#define TP_SCREEN_ROW_6		(TOUCH_PANEL_COORD_Y_START+60)
#define TP_SCREEN_ROW_7		(TOUCH_PANEL_COORD_Y_START+70)
#define TP_SCREEN_ROW_8		(TOUCH_PANEL_COORD_Y_START+80)
#define TP_SCREEN_ROW_9		(TOUCH_PANEL_COORD_Y_START+90)

#define TP_SCREEN_COL_W		(57)
#define TP_SCREEN_COL_0		(TOUCH_PANEL_COORD_X_START)
#define TP_SCREEN_COL_1		(TOUCH_PANEL_COORD_X_START+58)
#define TP_SCREEN_COL_2		(TOUCH_PANEL_COORD_X_START+116)
#define TP_SCREEN_COL_3		(TOUCH_PANEL_COORD_X_START+174)

#elif defined(__MMI_MAINLCD_240X320__)

#define TP_SCREEN_ROW_H		(19)
#define TP_SCREEN_ROW_0		(TOUCH_PANEL_COORD_Y_START)
#define TP_SCREEN_ROW_1		(TOUCH_PANEL_COORD_Y_START+20)
#define TP_SCREEN_ROW_2		(TOUCH_PANEL_COORD_Y_START+40)
#define TP_SCREEN_ROW_3		(TOUCH_PANEL_COORD_Y_START+60)
#define TP_SCREEN_ROW_4		(TOUCH_PANEL_COORD_Y_START+80)
#define TP_SCREEN_ROW_5		(TOUCH_PANEL_COORD_Y_START+100)
#define TP_SCREEN_ROW_6		(TOUCH_PANEL_COORD_Y_START+120)
#define TP_SCREEN_ROW_7		(TOUCH_PANEL_COORD_Y_START+140)
#define TP_SCREEN_ROW_8		(TOUCH_PANEL_COORD_Y_START+160)
#define TP_SCREEN_ROW_9		(TOUCH_PANEL_COORD_Y_START+180)

#define TP_SCREEN_COL_W		(79)
#define TP_SCREEN_COL_0		(TOUCH_PANEL_COORD_X_START)
#define TP_SCREEN_COL_1		(TOUCH_PANEL_COORD_X_START+80)
#define TP_SCREEN_COL_2		(TOUCH_PANEL_COORD_X_START+160)
#define TP_SCREEN_COL_3		(TOUCH_PANEL_COORD_X_START+240)

#endif


/* If the customer want to handle the pen events, register the function handler here. */

void custom_dummy_pen_hdlr(mmi_pen_point_struct pos)
{
}


mmi_pen_hdlr custom_extra_func_hdlr[MMI_PEN_EVENT_TYPE_MAX]={
                        	NULL, /* MMI_PEN_EVENT_DOWN, */
                        	NULL, /* MMI_PEN_EVENT_UP, */
                        	NULL, /* MMI_PEN_EVENT_LONG_TAP, */
                        	NULL, /* MMI_PEN_EVENT_REPEAT, */
                        	NULL, /* MMI_PEN_EVENT_MOVE, */
                        	NULL,  /* MMI_PEN_EVENT_ABORT, */ 
                        };

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩精品一区二区三区四区 | 调教+趴+乳夹+国产+精品| 久久久精品综合| 久久综合色天天久久综合图片| 日韩欧美国产精品一区| 欧美一区二区三区男人的天堂| 欧洲av在线精品| 91电影在线观看| 欧美亚洲日本国产| 欧美日韩一区不卡| 欧美一区二区国产| 精品欧美久久久| 国产欧美一区二区精品秋霞影院 | 久久一区二区视频| 欧美国产成人在线| 亚洲素人一区二区| 亚洲国产一区二区视频| 日日欢夜夜爽一区| 国产一区二区不卡| 成人av小说网| 欧美妇女性影城| 久久久精品综合| 亚洲综合色噜噜狠狠| 男人操女人的视频在线观看欧美| 精品中文av资源站在线观看| 国产一区二区不卡| 欧美中文字幕一二三区视频| 精品国产乱码久久久久久闺蜜| 久久精品亚洲一区二区三区浴池| 成人欧美一区二区三区视频网页| 亚洲成人福利片| 国产.精品.日韩.另类.中文.在线.播放| 99这里都是精品| 69av一区二区三区| 国产精品蜜臀av| 日韩综合一区二区| av中文一区二区三区| 日韩一区二区视频| 国产精品久久久久久福利一牛影视| 亚洲6080在线| 99精品视频在线观看| 日韩欧美成人激情| 夜夜揉揉日日人人青青一国产精品| 免费欧美在线视频| 色系网站成人免费| xfplay精品久久| 亚洲午夜电影在线| 成人一道本在线| 日韩欧美二区三区| 亚洲图片一区二区| 91丨九色丨国产丨porny| 精品久久五月天| 亚洲成av人影院| 色婷婷精品久久二区二区蜜臂av| 精品1区2区在线观看| 全国精品久久少妇| 欧美日韩中文字幕精品| 中文字幕亚洲精品在线观看| 精品在线亚洲视频| 日韩欧美自拍偷拍| 偷拍亚洲欧洲综合| 欧美综合一区二区| 亚洲精选视频在线| 成人精品电影在线观看| 久久―日本道色综合久久| 日韩中文字幕91| 777奇米四色成人影色区| 一区二区久久久| 色综合咪咪久久| 亚洲视频在线观看一区| 不卡视频在线看| 国产精品国产三级国产aⅴ原创| 久久精品免费观看| 欧美电视剧免费全集观看| 日韩黄色小视频| 欧美精品 日韩| 日本欧美一区二区在线观看| 欧美日韩国产高清一区二区三区 | 日韩视频一区二区三区| 麻豆91小视频| 精品三级在线观看| 国产伦精品一区二区三区免费迷| 精品区一区二区| 国产精品一区二区三区四区| 国产视频亚洲色图| av日韩在线网站| 一级日本不卡的影视| 欧美少妇xxx| 看片网站欧美日韩| 国产日韩一级二级三级| 97久久人人超碰| 午夜精品久久久久| 精品女同一区二区| 成人h版在线观看| 亚洲专区一二三| 欧美变态tickle挠乳网站| 国产精品亚洲第一区在线暖暖韩国| 中文成人av在线| 欧美性三三影院| 国产一区二区三区久久久| 国产精品丝袜在线| 欧美三级在线看| 国产一区在线精品| 亚洲欧美国产毛片在线| 91麻豆精品久久久久蜜臀| 国模冰冰炮一区二区| 亚洲美女电影在线| 日韩免费视频一区二区| 91麻豆高清视频| 国产一区二区福利| 一区二区三区四区中文字幕| 日韩一级大片在线观看| 94-欧美-setu| 麻豆精品久久久| 亚洲精品乱码久久久久久| 精品88久久久久88久久久| 91浏览器在线视频| 精品一区二区三区av| 一区二区三区四区五区视频在线观看 | 91小宝寻花一区二区三区| 丝袜美腿亚洲色图| 国产精品不卡一区二区三区| 欧美成人官网二区| 91国产免费观看| 成人av电影在线播放| 精品亚洲国内自在自线福利| 亚洲综合成人在线| 1区2区3区欧美| 日韩欧美的一区| 91官网在线观看| 91在线观看地址| 国产成人8x视频一区二区| 喷白浆一区二区| 亚洲国产成人91porn| 自拍偷在线精品自拍偷无码专区 | 五月激情六月综合| 亚洲色图欧美偷拍| 中文av一区特黄| 337p粉嫩大胆色噜噜噜噜亚洲| 欧美猛男男办公室激情| 色综合色狠狠综合色| 成人免费福利片| 国产不卡一区视频| 国产一区二区三区香蕉| 久久99精品久久久久久| 亚洲一区二区美女| 亚洲一区二区3| 亚洲与欧洲av电影| 亚洲日本va午夜在线影院| 久久久一区二区| 久久精品亚洲精品国产欧美| wwww国产精品欧美| 国产午夜精品久久久久久免费视 | 国产精品第一页第二页第三页| 久久精品这里都是精品| 久久五月婷婷丁香社区| 久久无码av三级| 久久精品日韩一区二区三区| 久久色视频免费观看| 中文字幕免费不卡在线| 亚洲欧洲另类国产综合| 亚洲精品网站在线观看| 亚洲午夜精品在线| 日本女优在线视频一区二区| 久久爱www久久做| 国产精品伊人色| 波多野结衣91| 在线观看不卡一区| 91精品免费在线观看| 欧美人动与zoxxxx乱| 欧美mv日韩mv国产网站| 日本一区二区三区久久久久久久久不| 久久久三级国产网站| **欧美大码日韩| 亚洲小少妇裸体bbw| 久久超级碰视频| 丰满白嫩尤物一区二区| 91免费版pro下载短视频| 欧美色偷偷大香| 久久亚洲精精品中文字幕早川悠里 | 久久伊人蜜桃av一区二区| 国产欧美一区二区精品性色超碰| 亚洲欧美韩国综合色| 日韩av一区二区在线影视| 懂色一区二区三区免费观看| 欧美专区日韩专区| 精品国产百合女同互慰| 成人免费在线观看入口| 日本欧美一区二区三区乱码| 成人美女视频在线观看| 在线不卡中文字幕播放| 亚洲国产精品99久久久久久久久| 亚洲国产视频网站| 国产成人精品一区二| 欧美性受xxxx黑人xyx性爽| 国产亚洲一本大道中文在线| 亚洲一级二级三级在线免费观看| 国产精品一区二区无线| 91精品国产综合久久久久久久 | 色丁香久综合在线久综合在线观看|