drv_maxtouch.cメモ

          

   

//drv_maxtouch.c //以下でtouchID, xpos, ypos 応答あり touchID = 0; xpos,yposは、タッチした位置の座標値を表示 int ys_touchID,ys_xpos,ys_ypos; //ys_touchID: 同一タッチパネル上に於いて、複数のタッチが発生した時  //順番に 0,1,2,3 ...と各タッチに割り振られるタッチ識別番号 int ys_id,ys_x,ys_y; char Buf[64]; void LcdMonitor(void) { lcd_cmd(0x80); //1目の先頭へ sprintf(Buf,"id=%d ",ys_id);// //sprintf(Buf,"touchID=%d ",ys_touchID);// lcd_str(Buf); //液晶表示 lcd_cmd(0xC0); //2行目の先頭へ sprintf(Buf," ");// lcd_str(Buf); //液晶表示 lcd_cmd(0xC0); //2行目の先頭へ sprintf(Buf,"x=%d, y=%d", ys_x, ys_y); // //sprintf(Buf,"X=%d, Y=%d", ys_xpos, ys_ypos); // lcd_str(Buf); // 開始メッセージ1行目表示 }   static void _handleTouchMessage(uint8_t touchID, MAXTOUCH_TouchEvent* tchEvt) { ... ... case 0x5: // touch up { SYS_INP_InjectTouchUp(touchID, xpos, ypos); ys_touchID = touchID; ys_xpos = xpos; ys_ypos = ypos; LcdMonitor(); break; } ... ... //以下は、タッチ操作で変化なし static void mxt_proc_t100_message(struct mxt_data *data, uint8_t *message) { ... ... case 0x5: // touch up { SYS_INP_InjectTouchUp(id, x, y); ys_id = id; ys_x = x; ys_y = y; LcdMonitor(); break; } ... ... }