【驅動】TP電容屏驅動—3.TP報點協議A/B 之 1.USB多點觸控上報協議詳解(示例)


文檔摘錄:

android4.0觸摸屏(touchscreen)以及屏幕按鍵驅動解析:https://blog.csdn.net/u012719256/article/details/53584060

內核中的多點觸摸協議文檔 Multi-touch (MT) Protocol:https://blog.csdn.net/u012719256/article/details/53607499

linux input子系統 — TP A/B(Slot)協議:https://blog.csdn.net/u012719256/article/details/53609906


USB多點觸控上報協議詳解
USB HID-compliant mouse報點協議解析

本篇文章主要是對usb 多點觸控給Windows上報點位時上報的數據解析。至於usb怎樣枚舉出一個多點觸控在這不做解釋,網上有很多教程。
1、當你的usb hid設備枚舉正常后,你可以使用bus hound看到你的usb 設備里有一個新增的HID-compliant mouse接口。可以通過usbTreeView查看對應的端點,我這里的該接口對應的是端點1。所以上報觸摸點時,通過端點1上報就好。

 

 2、windows要知道你的觸摸狀態,必須要知道你有幾個點上報,每個點的狀態(按下還是松開),每個點對應的id(也就是對應的手指id),每個點的坐標。由上面的端點描述可以看到bInterval = 0x01(1ms),也就是說windows這邊時1ms找我們要一次觸摸點的坐標,當我們有坐標點更新時就上傳坐標點,當沒有觸摸時,直接NAK就好。

3、數據報文來了。舉個例子

 

 上面的報文(0x02,0x07,0x00,0x00,0x04,0x00,0x04,0x06,0x01,0x00,0x08,0x00,0x08,0x02)的意思就是0號手指被按下,其坐標點為(1024,1024),1號手指被釋放,釋放的位置坐標點為(2048,2048)。依此類推,如果需要報第三點、第四點等按照上面的格式添加數據就可以了。

————————————————
版權聲明:本文為CSDN博主「wxc_312」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_28738985/article/details/104026994


 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM