touchscreen的B協議上報部分

2021-07-07 06:19:38 字數 1392 閱讀 1853

static void ft***x_report_value(struct ft***x_ts_data *data)

else

}printk(kern_warning "[focal][touch] matt-last_touchpoint1=%d\n",last_touchpoint);

if((last_touchpoint>0)&&(event->cur_touchpoint==0))

//當cur_touchpoint=0的時候說明沒有觸點但是偶爾會發生有觸電沒有取消導致小白點的問題

//所以再看last_touchpoint是否大於0,有的話全部清空

last_touchpoint=0;

}printk(kern_warning "[focal][touch] matt-uppoint=%d\n",uppoint);

if(event->touch_point == uppoint) else

input_sync(data->input_dev);

last_touchpoint=event->cur_touchpoint;

printk(kern_warning "[focal][touch] matt-last_touchpoint2=%d\n",last_touchpoint);}

接下來看看這個函式

void input_mt_report_slot_state(struct input_dev *dev,

unsigned int tool_type, bool active)

id = input_mt_get_value(slot, abs_mt_tracking_id);

if (id < 0 || input_mt_get_value(slot, abs_mt_tool_type) != tool_type)

id = input_mt_new_trkid(mt);

input_event(dev, ev_abs, abs_mt_tracking_id, id);

input_event(dev, ev_abs, abs_mt_tool_type, tool_type);

}

通過修改slot的abs_mt_tracking_id,可以實現新增加、替換,去除觸控點。

[zh] 非負數的 id 被認為是觸控點, -1 的 id被認為是未使用的slot。

[zh] 乙個以前不存在的 id 出現了表示是乙個新的,乙個 id 不存在了表示 刪除了。

[zh] 因為只有變化的資訊被上報,因此每乙個觸控點的完整資訊必須放在接收端進行維護。

[zh] 根據接收到的mt(multitouch)訊息,應用程式更新當前slot的相關屬性。

也就是先報了slot,再報tracking id,然後是具體的觸控資料

JESD204B介面與協議

jesd204b協議 在使用最新模數轉換器 adc 和數模轉換器 dac 設計系統時,我已知道了很多有關jesd204b介面標準的資訊,這些器件使用該協議與fpga通訊。有乙個沒有深入討論的主題就是解決adc至fpga 和fpga 至dac鏈路問題的協議部分,這兩種鏈路本來就是相同的tx 至rx系統...

1553B協議一些特點

1553b mil std 1553b 資料匯流排標準是20世紀70年代由美國公布的一種序列多路資料匯流排標準。它最初 是為飛機提出的內部電子系統連網標準,後來由於其可靠性高 傳輸率較高 技術成熟 易於擴充套件等優點而得到廣泛應用,尤其在航空 航天測控網路中更加受到關注。1553b的一些特點 1 1...

B樹 B 樹 B 樹 B 樹的區別

b樹 即二叉搜尋樹 1.所有非葉子結點至多擁有兩個兒子 left和right 2.所有結點儲存乙個關鍵字 3.非葉子結點的左指標指向小於其關鍵字的子樹,右指標指向大於其關鍵字的子樹 如 b樹的搜尋,從根結點開始,如果查詢的關鍵字與結點的關鍵字相等,那麼就命中 否則,如果查詢關鍵字比結點關鍵字小,就進...