隨著嵌入式應用對GUI圖形界面需求的增加,Qt在Linux嵌入式設備中的使用越來越廣泛,許多應用也都對人機交互界面有一定的要求。因此觸摸屏、鼠標等設備等支持也變得重要起來,英創(chuàng)Linux嵌入式工控板已經支持了鼠標和4線制電阻式觸摸屏在Qt中的使用,在某一些應用場合中,電容屏可能會更受歡迎,所以英創(chuàng)公司在EM335x和EM928x系列產品中加入了FT5316電容觸摸屏芯片的驅動程序。電容屏是人體觸摸操作,不需要按壓,而電阻屏是靠壓力感應的方式,所以需要使用筆針類的工具按壓,相比起來,給用戶的使用體驗電容屏會靈敏一些。
1、硬件接口
FT5316電容觸摸屏芯片的通訊接口為I2C,并且還需要一路中斷信號和一路復位信號,在EM335x評估底板中,英創(chuàng)公司已經將電容屏的接口引出,將中斷和復位信號定義為GPIO17、18兩個管腳,具體的電路可以參考光盤中的評估底板原理圖。EM335x評估板的接口如下圖:
2、軟件驅動
在軟件上,英創(chuàng)公司已經將FT5316電容觸摸屏芯片驅動移植到了EM335x和EM928x系列的主板中,并且編譯成了一個模塊edt-ft5x06.ko件,存放在/lib/modules/3.12.10目錄下。要使用電容屏時,需要用insmod命令加載這個ko文件:
加載驅動以后,電容屏的節(jié)點為/dev/input/event1。
3、實際應用
因為在工控應用中電阻屏的使用還是占大部分,文件系統(tǒng)中所以默認的環(huán)境變量都是設置為電阻屏的節(jié)點/dev/input/event0,所以加載完驅動后,要在Qt中使用電容屏觸摸,需要設置兩個環(huán)境變量,要修改的環(huán)境變量為:QWS_MOUSE_PROTO和TSLIB_TSDEVICE,在這里介紹兩種修改的方法:
(1)在終端直接輸入:
export set TSLIB_TSDEVICE=/dev/input/event1
export set QWS_MOUSE_PROTO='TSLIB:/dev/input/event1'
這種方法在每次重啟或者上電后,都要先輸入這兩條指令來設置。
(2)使用vi在/etc/profile文件中做如下修改:
#export set TSLIB_TSDEVICE=/dev/input/event0
export set TSLIB_TSDEVICE=/dev/input/event1
#export set QWS_MOUSE_PROTO='TSLIB:/dev/input/event0'
export set QWS_MOUSE_PROTO='TSLIB:/dev/input/event1'
即屏蔽原來電阻屏的環(huán)境變量,重新設置為電容屏,這樣只需要修改一次,不管上電或是重啟都不需要再設置了。
如果做為產品需要批量使用電容屏,可以由英創(chuàng)公司在出廠前修改好。
設置完后就可以使用電容屏了,使用前還是需要先校準一次,在終端輸入:ts_calibrate依次校準完屏幕上的五個點,就可以正常使用了。
-
Linux
+關注
關注
88文章
11576瀏覽量
216659 -
嵌入式主板
+關注
關注
7文章
6106瀏覽量
36764
發(fā)布評論請先 登錄
嵌入式工控設備在儲能系統(tǒng)中的應用:NIS-6573助力行業(yè)智能升級

Linux嵌入式和單片機嵌入式的區(qū)別?
聚徽解碼——從嵌入式到模塊化:國內工控平板的柔性技術架構設計
聚徽智控——從嵌入式到邊緣計算:平板工控電腦的技術進化論
一文看懂:嵌入式與壁掛式工控機安裝方式的關鍵差異
飛凌嵌入式2025嵌入式及邊緣AI技術論壇圓滿結束

飛凌嵌入式i.MX8M Mini核心板已支持Linux6.1

評論