成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 正文
    • 硬件原理
    • IOMUX配置
    • 增加設(shè)備節(jié)點
    • 添加GT9xx驅(qū)動
    • 編譯測試
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

飛凌嵌入式ElfBoard ELF 1板卡-開發(fā)板適配之電容屏觸摸

02/19 09:00
588
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

電容式觸摸屏技術(shù)是利用人體的電流感應(yīng)進行工作的。電容式觸摸屏是一塊四層復(fù)合玻璃屏,玻璃屏的內(nèi)表面和夾層各涂有一層ITO,最外層是一薄層矽土玻璃保護層,夾層ITO涂層作為工作面,四個角上引出四個電極,內(nèi)層ITO為屏蔽層以保證良好的工作環(huán)境。 當(dāng)手指觸摸在金屬層上時,由于人體電場,用戶和觸摸屏表面形成以一個耦合電容,對于高頻電流來說,電容是直接導(dǎo)體,于是手指從接觸點吸走一個很小的電流。這個電流分別從觸摸屏的四角上的電極中流出,并且流經(jīng)這四個電極的電流與手指到四角的距離成正比,控制器通過對這四個電流比例的精確計算,得出觸摸點的位置。

這些采集和計算工作都由屏體上的電容觸摸芯片完成,i.MX6ULL通過中斷引腳I2C接口與該芯片通信,獲取觸摸具體坐標(biāo)數(shù)據(jù)。下面來進行電容觸摸支持的配置。

硬件原理

LCD接口上關(guān)于電容觸摸的引腳一共四個:

IIC1_SDA、IIC1_SCL是I2C1的數(shù)據(jù)和時鐘引腳,用于與觸摸芯片通信,在I2C1的配置,在之前I2C章節(jié)已經(jīng)講過,這里不再重復(fù)配置;TP_INT是觸摸芯片的中斷引腳,查表后知道,PAD NAME為SNVS_TAMPER1;TP_RST是觸摸芯片復(fù)位引腳,PAD NAME為SNVS_TAMPER0。

IOMUX配置

I2C1已經(jīng)配置過,不再配置,只需配置TP_INT(SNVS_TAMPER1)、TP_RST(SNVS_TAMPER0),打開arch/arm/boot/dts/imx6ull-pinfunc-snvs.h文件,搜索SNVS_TAMPER1和SNVS_TAMPER0:

在arch/arm/boot/dts/imx6ull-elf1-emmc.dts設(shè)備樹文件的&iomuxc_snvs節(jié)點下,增加子節(jié)點pinctrl_tsc_ic:

pinctrl_tsc_ic: tsc_icgrp {

???????fsl,pins = <

??????????????MX6ULL_PAD_SNVS_TAMPER0__GPIO5_IO00 ?0x10b0

??????????????MX6ULL_PAD_SNVS_TAMPER1__GPIO5_IO01 ?0x8000000

???????>;

};

注意:在設(shè)備樹文件中,有GPIO5_IO00的其他復(fù)用,我們注釋掉:

增加設(shè)備節(jié)點

ElfBoard搭配的電容屏使用的是goodix的GT9XX系列觸摸芯片,增加對goodix的GT9XX系列觸摸芯片的支持,在i2c1節(jié)點下增加子節(jié)goodix_ts@5d:

goodix_ts@5d {

????????????????compatible = "goodix,gt9xx";

????????????????reg = <0x5d>;

????????????????pinctrl-names = "default";

????????????????pinctrl-0 = <&pinctrl_tsc_ic>;

????????????????status = "okay";

????????????????interrupt-parent = <&gpio5>;

????????????????interrupts = <1 2>;

????????????????goodix,rst-gpio = <&gpio5 0 ?GPIO_ACTIVE_LOW>;

????????????????goodix,irq-gpio = <&gpio5 1 ?GPIO_ACTIVE_LOW>;

????????????????goodix,cfg-group0 = [

????????????????????????42 D0 02 00 05 05 75 01 01 0F 24

????????????????????????0F 64 3C 03 05 00 00 00 02 00 00

????????????????????????00 16 19 1C 14 8C 0E 0E 24 00 31

????????????????????????0D 00 00 00 83 33 1D 00 41 00 00

????????????????????????00 00 00 08 0A 00 2B 1C 3C 94 D5

????????????????????????03 08 00 00 04 93 1E 00 82 23 00

????????????????????????74 29 00 69 2F 00 5F 37 00 5F 20

????????????????????????40 60 00 F0 40 30 55 50 27 00 00

????????????????????????00 00 00 00 00 00 00 00 00 00 00

????????????????????????00 00 00 00 00 00 00 14 19 00 00

????????????????????????50 50 02 04 06 08 0A 0C 0E 10 12

????????????????????????14 16 18 1A 1C 00 00 00 00 00 00

????????????????????????00 00 00 00 00 00 00 00 00 00 1D

????????????????????????1E 1F 20 21 22 24 26 28 29 2A 1C

????????????????????????18 16 14 13 12 10 0F 0C 0A 08 06

????????????????????????04 02 00 00 00 00 00 00 00 00 00

????????????????????????00 00 00 00 00 00 00 00 9C 01];

????????????????goodix,cfg-group2 = [

????????????????????????48 D0 02 00 05 05 75 01 01 0F 24

????????????????????????0F 64 3C 03 05 00 00 00 02 00 00

????????????????????????00 16 19 1C 14 8C 0E 0E 24 00 31

????????????????????????0D 00 00 00 83 33 1D 00 41 00 00

????????????????????????3C 0A 14 08 0A 00 2B 1C 3C 94 D5

????????????????????????03 08 00 00 04 93 1E 00 82 23 00

????????????????????????74 29 00 69 2F 00 5F 37 00 5F 20

????????????????????????40 60 00 F0 40 30 55 50 27 00 00

????????????????????????00 00 00 00 00 00 00 00 00 00 00

????????????????????????00 00 00 00 00 00 00 14 19 00 00

????????????????????????50 50 02 04 06 08 0A 0C 0E 10 12

????????????????????????14 16 18 1A 1C 00 00 00 00 00 00

????????????????????????00 00 00 00 00 00 00 00 00 00 1D

????????????????????????1E 1F 20 21 22 24 26 28 29 2A 1C

????????????????????????18 16 14 13 12 10 0F 0C 0A 08 06

????????????????????????04 02 00 00 00 00 00 00 00 00 00

????????????????????????00 00 00 00 00 00 00 00 3C 01];

????????};

添加后效果如下:

其中reg=<0x5d>是該芯片的i2c地址;

interrupt-parent = <&gpio5>表示使用中斷控制器為GPIO5;

interrupts = <1 2>屬性中的“1“表示使用中斷控制器的第1個引腳,“2”表示使用的中斷觸發(fā)方式為下降沿觸發(fā)。

goodix,rst-gpio = <&gpio5 0 ?GPIO_ACTIVE_LOW>;

goodix,irq-gpio = <&gpio5 1 ?GPIO_ACTIVE_LOW>;

分別表示復(fù)位和中斷連接的具體引腳。

goodix,cfg-group0和goodix,cfg-group1,表示芯片的配置數(shù)據(jù),芯片初始化的時候或者出現(xiàn)異常時需要重新對其寄存器進行配置。

添加GT9xx驅(qū)動

一、將ELF 1開發(fā)板資料包

潼南县| 泾源县| 临泽县| 西城区| 元氏县| 渑池县| 含山县| 六枝特区| 棋牌| 台南市| 陆川县| 日喀则市| 兴隆县| 晋城| 兴城市| 西宁市| 宾阳县| 海伦市| 邛崃市| 沾化县| 肇州县| 彭泽县| 东海县| 大理市| 阿巴嘎旗| 德保县| 石阡县| 丁青县| 库伦旗| 东光县| 广汉市| 敖汉旗| 长子县| 广安市| 普兰店市| 神池县| 南澳县| 汶上县| 白银市| 昭平县| 桂阳县|