WhyCan Forum

本站无需注册,无需积分,无需回复可下载所有资料,如果真的喜欢小站,请您注册之后请至少回复一个帖子激活Id,谢谢支持! 站长QQ: 516333132 (挖坑网/填坑网) admin@whycan.cn

您尚未登录。

#1 2018-11-13 20:08:47

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

各位大神有弄过电容屏的触摸吗 不是电阻屏

不知道如何可以让电容屏触摸起来, 因为电阻屏直接用tslilb就可以了

离线

#2 2018-11-13 20:12:44

达克罗德
会员
注册时间: 2018-04-10
累计积分: 513

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

裸奔的话,xboot群文件有人分享

离线

#3 2018-11-13 20:30:28

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

你的是什么驱动芯片?gt911?

离线

#4 2018-11-14 09:21:59

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

你的是什么驱动芯片?gt911?

我这里在内核中配置了FT5X06 我用的是这个系列的
TS.png
然后我I2C用的是PB8 和Pb9

I2C.png

离线

#5 2018-11-14 09:24:52

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

那现在驱动了吗?启动log有没有成功的信息? /dev/input/ 目录下面eventX设备?

离线

#6 2018-11-14 09:31:49

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

那现在驱动了吗?启动log有没有成功的信息? /dev/input/ 目录下面eventX设备?

打印的信息 在/dev/input里面有一个event0
log.png

但是从这个打印信息来看 好像还是I2C0在起作用啊

最近编辑记录 无情一刀 (2018-11-14 09:32:48)

离线

#7 2018-11-14 09:53:29

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

对,看起来 I2C1 根本没有起作用, 记得 I2C引脚(PB8, PB9)要上拉哦.

再不行只能先接 I2C0了。

离线

#8 2018-11-14 10:48:14

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

对,看起来 I2C1 根本没有起作用, 记得 I2C引脚(PB8, PB9)要上拉哦.

再不行只能先接 I2C0了。

I2C0现在没法接了  测试了下是中断没有起来 我现在中断脚用的是PB3   现在就是不知道中断脚不知道是在哪里配置

firq.png

离线

#9 2018-11-14 11:00:04

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

那进 FT5X06 中断程序, 看 request_irq 中断申请通过了没有, 跟踪一下这几行代码,看看什么情况.

离线

#10 2018-11-14 13:45:04

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

那进 FT5X06 中断程序, 看 request_irq 中断申请通过了没有, 跟踪一下这几行代码,看看什么情况.

你说的这个request_irq 是指那个文件里面的 I2C-core.c里面没有你说的这个函数

touch.png
在配置里面我吧那个NS2009的去掉了 选择的是那个FT5X06  发现在/dev/input中没有那个event那个设备

离线

#11 2018-11-14 14:07:49

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

https://github.com/torvalds/linux/blob/master/drivers/input/touchscreen/edt-ft5x06.c
https://github.com/Lichee-Pi/linux/blob/zero-4.13.y/drivers/input/touchscreen/edt-ft5x06.c

跟踪一下这个:

error = devm_request_threaded_irq(&client->dev, client->irq,
                    NULL, edt_ft5x06_ts_isr, irq_flags,
                    client->name, tsdata);

离线

#12 2018-11-14 14:49:51

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

https://github.com/torvalds/linux/blob/master/drivers/input/touchscreen/edt-ft5x06.c
https://github.com/Lichee-Pi/linux/blob/zero-4.13.y/drivers/input/touchscreen/edt-ft5x06.c

跟踪一下这个:

error = devm_request_threaded_irq(&client->dev, client->irq,
                    NULL, edt_ft5x06_ts_isr, irq_flags,
                    client->name, tsdata);

现在是FT5x06是有一个复位脚我接到PB2管脚  在时序中 要一个10ms时间的拉低 ,就是这个程序在内核里面有写 吗  还是配置这个管脚就可以;

离线

#13 2018-11-14 14:59:06

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:
晕哥 说:

https://github.com/torvalds/linux/blob/master/drivers/input/touchscreen/edt-ft5x06.c
https://github.com/Lichee-Pi/linux/blob/zero-4.13.y/drivers/input/touchscreen/edt-ft5x06.c

跟踪一下这个:

error = devm_request_threaded_irq(&client->dev, client->irq,
                    NULL, edt_ft5x06_ts_isr, irq_flags,
                    client->name, tsdata);

现在是FT5x06是有一个复位脚我接到PB2管脚  在时序中 要一个10ms时间的拉低 ,就是这个程序在内核里面有写 吗  还是配置这个管脚就可以;

tsdata->reset_gpio = devm_gpiod_get_optional(&client->dev,
                             "reset", GPIOD_OUT_HIGH);
    if (IS_ERR(tsdata->reset_gpio)) {
        error = PTR_ERR(tsdata->reset_gpio);
        dev_err(&client->dev,
            "Failed to request GPIO reset pin, error %d\n", error);
        return error;
    }

可能需要在 dts 提供复位引脚

离线

#14 2018-11-14 15:47:05

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

123123136.png
这样写的可以吗

离线

#15 2018-11-14 16:08:02

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

I2C.png

应该写在 FT5X06 里面, 还得在request reset/irq 那里加调试语句,看看有没有执行。

离线

#16 2018-11-14 16:16:49

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

https://whycan.cn/files/members/1116/I2C.png

应该写在 FT5X06 里面, 还得在request reset/irq 那里加调试语句,看看有没有执行。

我这个真不知道怎么去定义了 因为还要有名字 这个我不是很懂

离线

#17 2018-11-14 17:19:52

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

这是在里面添加的reset脚
33.png
在Edt-ft5x06.c中这个函数中edt_ft5x06_ts_probe加了打印 根本就没有进来

离线

#18 2018-11-14 17:35:51

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

得找下在那里调用设备树读写函数, 确认是 "resets"?在哪个文件里面写的 "resets" ?
这个驱动我也没有弄过,也只能一步一步跟踪.

离线

#19 2018-11-14 17:46:19

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

得找下在那里调用设备树读写函数, 确认是 "resets"?在哪个文件里面写的 "resets" ?
这个驱动我也没有弄过,也只能一步一步跟踪.


我改为reset了
    tsdata->reset_gpio = devm_gpiod_get_optional(&client->dev,
                             "reset", GPIOD_OUT_HIGH);
现在就是配置了这些了  在/dev中都没有看到input;

最近编辑记录 无情一刀 (2018-11-14 17:48:57)

离线

#20 2018-11-14 18:05:36

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

获取gpio函数devm_gpiod_get_optional(): https://blog.csdn.net/kris_fei/article/details/78932904

例如在显示驱动看到的去查找名字为”enable”的gpio
panel-simple.c:

panel->enable_gpio = devm_gpiod_get_optional(dev, "enable", 0);

在使用mipi屏幕的主dts就有enable pin的定义
rk3399-firefly-mipi.dts:

enable-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>;




所以你应该改成这样:
reset-gpios:

然后看下 devm_gpiod_get_optional 是否执行成功,等你好消息.

离线

#21 2018-11-15 10:29:30

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

现在就是这个函数edt_ft5x06_ts_probe根本就没有进去   所以还是这里配置的有问题  没有匹配到
set.png

离线

#22 2018-11-15 10:31:54

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

edt, edt_ft5306 是不是逗号后面多了一个空格?

离线

#23 2018-11-15 11:29:13

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

现在是进到这个函数edt_ft5x06_ts_probe
但是在这里 这里出现错误了touchscreen probe failed  还要查下edt_ft5x06_ts_identify这个函数里面有什么没有配置   
error = edt_ft5x06_ts_identify(client, tsdata, fw_version);
    if (error) {
        dev_err(&client->dev, "touchscreen probe failed\n");
        return error;
    }

离线

#24 2018-11-15 11:41:58

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:

现在是进到这个函数edt_ft5x06_ts_probe
但是在这里 这里出现错误了touchscreen probe failed  还要查下edt_ft5x06_ts_identify这个函数里面有什么没有配置   
error = edt_ft5x06_ts_identify(client, tsdata, fw_version);
    if (error) {
        dev_err(&client->dev, "touchscreen probe failed\n");
        return error;
    }

上面是不是去掉空格, 就可以进入这里?

这里看起来是校验 ft5306 里面的固件版本?
跟进去看看吧

离线

#25 2018-11-15 11:44:20

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:
无情一刀 说:

现在是进到这个函数edt_ft5x06_ts_probe
但是在这里 这里出现错误了touchscreen probe failed  还要查下edt_ft5x06_ts_identify这个函数里面有什么没有配置   
error = edt_ft5x06_ts_identify(client, tsdata, fw_version);
    if (error) {
        dev_err(&client->dev, "touchscreen probe failed\n");
        return error;
    }

上面是不是去掉空格, 就可以进入这里?

这里看起来是校验 ft5306 里面的固件版本?
跟进去看看吧

是的 还有那个横岗
ok.png

离线

#26 2018-11-15 11:56:41

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

一进来去读取触摸信息就报错了 但是我那个触摸的芯片的地址 也是对的额

离线

#27 2018-11-15 12:21:56

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:

一进来去读取触摸信息就报错了 但是我那个触摸的芯片的地址 也是对的额

逻辑分析仪抓i2c,再跟进那个probe函数

离线

#28 2018-11-15 15:01:51

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:
无情一刀 说:

一进来去读取触摸信息就报错了 但是我那个触摸的芯片的地址 也是对的额

逻辑分析仪抓i2c,再跟进那个probe函数

现在交硬件的抓I2C 现在就是连reset有拉低了 这管脚正常 ,至于其他的时序 还抓不到

离线

#29 2018-11-15 15:43:11

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:
晕哥 说:
无情一刀 说:

一进来去读取触摸信息就报错了 但是我那个触摸的芯片的地址 也是对的额

逻辑分析仪抓i2c,再跟进那个probe函数

现在交硬件的抓I2C 现在就是连reset有拉低了 这管脚正常 ,至于其他的时序 还抓不到

逻辑分析仪?如果i2c逻辑分析仪没有抓到数据说明软硬件可能有问题,是不是引脚没上拉,复用搞错,dts 地址有没有配错。

离线

#30 2018-11-15 15:55:20

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

有上拉 刚上电的时候是高电平的 dts里面那个地址 是对的 0x38
ww.png

最近编辑记录 无情一刀 (2018-11-15 15:56:59)

离线

#31 2018-11-15 16:24:44

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

https://github.com/ev3dev/i2c-tools/tree/ev3dev-stretch/tools
https://kernel.googlesource.com/pub/scm/utils/i2c-tools/i2c-tools/

i2cutils 工具了解一下,
用 i2cdetect 命令可以遍历总线上所有的i2c设备,
把逻辑分析仪挂总线上面可以抓到 i2cdetect 命令发出来的数据.


或者把 ns2009 飞线到这组 i2c1 上面, 然后看是否能把 ns2009驱动起来,
用于判断硬件软件环境是否正常.

离线

#32 2018-11-15 16:48:21

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

https://github.com/ev3dev/i2c-tools/tree/ev3dev-stretch/tools
https://kernel.googlesource.com/pub/scm/utils/i2c-tools/i2c-tools/

i2cutils 工具了解一下,
用 i2cdetect 命令可以遍历总线上所有的i2c设备,
把逻辑分析仪挂总线上面可以抓到 i2cdetect 命令发出来的数据.


或者把 ns2009 飞线到这组 i2c1 上面, 然后看是否能把 ns2009驱动起来,
用于判断硬件软件环境是否正常.


就是在里面也定义了串口0  定义的也是P8P9和这个I2C重复了 但是我没有接串口0  这样有影响吗

离线

#33 2018-11-15 17:03:39

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:
晕哥 说:

https://github.com/ev3dev/i2c-tools/tree/ev3dev-stretch/tools
https://kernel.googlesource.com/pub/scm/utils/i2c-tools/i2c-tools/

i2cutils 工具了解一下,
用 i2cdetect 命令可以遍历总线上所有的i2c设备,
把逻辑分析仪挂总线上面可以抓到 i2cdetect 命令发出来的数据.


或者把 ns2009 飞线到这组 i2c1 上面, 然后看是否能把 ns2009驱动起来,
用于判断硬件软件环境是否正常.


就是在里面也定义了串口0  定义的也是P8P9和这个I2C重复了 但是我没有接串口0  这样有影响吗

有影响,不能这么复用.

离线

#34 2018-11-15 17:27:37

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

我在uboot和内核将配置串口0 全部屏蔽了 还是一样的结果

离线

#35 2018-11-15 19:05:59

basicdev
会员
注册时间: 2017-10-02
累计积分: 159

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:

我在uboot和内核将配置串口0 全部屏蔽了 还是一样的结果

按晕哥31楼的方法,i2cdetect+逻辑分析仪。

离线

#36 2018-11-16 09:50:44

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

现在I2C0 和1  都有  我用工具看1的时候
tool.png

离线

#37 2018-11-16 10:04:28

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:

现在I2C0 和1  都有  我用工具看1的时候
tool.png

设备树里面移除 FT5036的驱动,然后再用 i2cdetect 搜索一下,看能否找到 FT5036 在对应的地址里面.

还有把那个内核信息屏蔽一下, 否则数据都看不清了。

离线

#38 2018-11-16 11:02:02

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:
无情一刀 说:

现在I2C0 和1  都有  我用工具看1的时候
https://whycan.cn/files/members/1116/tool.png

设备树里面移除 FT5036的驱动,然后再用 i2cdetect 搜索一下,看能否找到 FT5036 在对应的地址里面.

还有把那个内核信息屏蔽一下, 否则数据都看不清了。

他出现这样的打印说明是检测到了I2C1?

离线

#39 2018-11-16 11:10:17

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:
晕哥 说:
无情一刀 说:

现在I2C0 和1  都有  我用工具看1的时候
https://whycan.cn/files/members/1116/tool.png

设备树里面移除 FT5036的驱动,然后再用 i2cdetect 搜索一下,看能否找到 FT5036 在对应的地址里面.

还有把那个内核信息屏蔽一下, 否则数据都看不清了。

他出现这样的打印说明是检测到了I2C1?

驱动出错了, 要跟踪一下.


搜了一下全志的I2C使用的真是Marvell 的IP:
I2C: mv64xxx compatible logic, port done by Maxime
http://linux-sunxi.org/User:Wens

离线

#40 2018-11-16 11:17:51

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

不是很明白你说的这里
搜了一下全志的I2C使用的真是Marvell 的IP:

离线

#41 2018-11-16 11:19:28

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:

不是很明白你说的这里
搜了一下全志的I2C使用的真是Marvell 的IP:

没什么意思,就是 全志的I2C驱动就是 Marvell 公司的.

你跟进去看看是发生了什么,报那行出错信息.

离线

#42 2018-11-16 13:45:52

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

现在一直是在request irq就报报错
irQ.png

离线

#43 2018-11-16 13:57:35

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

前面那个问题怎么解决的?

error = devm_request_threaded_irq(&client->dev, client->irq,
                    NULL, edt_ft5x06_ts_isr, irq_flags,
                    client->name, tsdata);
    if (error) {
        dev_err(&client->dev, "Unable to request touchscreen IRQ.\n");
        return error;
    }

这里申请中断出错了, 搜一下错误号 -16 是神马错误.

感觉是你的 dts 配错了,

贴出来看下.

离线

#44 2018-11-16 14:03:13

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

2.png
1.png

离线

#45 2018-11-16 14:05:24

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

这里是一直就有的 没有改
3.png

离线

#46 2018-11-16 14:31:52

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

如果我设置的是pb3为中断管脚    我这里要怎么去修改了   下图是GPX1-6为中断脚
4.png

离线

#47 2018-11-16 14:32:48

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

36楼那个问题怎么解决的?

离线

#48 2018-11-16 14:43:11

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

根据这个帖子: http://bbs.ilichee.cc/t/how-to-assign-gpio-interrupt-solved/172

我总结了一下:

&i2c1 {
status = “okay”;

    edt_ft5x06: edt_ft5206@38 {
            compatible = "edt,edt-ft5206";
            reg = <0x38>;
            interrupt-parent = <&pio>;
            interrupts = <1 3 IRQ_TYPE_EDGE_FALLING>; /* PB3 */
            touchscreen-size-x = <800>;
            touchscreen-size-y = <480>;
            status = "okay";
    };
};


打开文件 : drivers/pinctrl/sunxi/pinctrl-sun8i-v3s.c

原来内容:

static const struct sunxi_pinctrl_desc sun8i_v3s_pinctrl_data = {
.pins = sun8i_v3s_pins,
.npins = ARRAY_SIZE(sun8i_v3s_pins),
.irq_banks = 2,
.irq_read_needs_mux = true
};

需要改成这样:

static const struct sunxi_pinctrl_desc sun8i_v3s_pinctrl_data = {
.pins = sun8i_v3s_pins,
.npins = ARRAY_SIZE(sun8i_v3s_pins),
.irq_banks = 2,
.irq_bank_base = 1,
.irq_read_needs_mux = true
};

添加 .irq_bank_base = 1,


最后那个楼主说问题解决了.

离线

#49 2018-11-16 14:45:10

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

36楼那个问题怎么解决的?


因为我他那里是读取数据 我在probe中暂时不要读取数据
所以我我就这句话先屏蔽掉edt_ft5x06_ts_identify

离线

#50 2018-11-16 15:25:56

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

现在就是IRQ一直弄不上去  还是出现失败
5.png

离线

#51 2018-11-16 15:40:04

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

貌似还是中断申请挂了, 这坑不会填

看下这个有没有什么帮助吧: https://whycan.cn/t_1261.html

离线

#52 2018-11-16 17:30:17

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

这是在内核dtsi中配置的i2c1  这里对那个dts有影响吗
7.png

离线

#53 2018-11-19 10:24:40

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

问下这个函数的源码是在哪里哦哦
devm_request_threaded_irq

离线

#54 2018-11-19 10:37:27

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

改配置的也都配置 还是一样的身躯中断不了
1.jpg

离线

#55 2018-11-19 11:09:55

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

为什么这个回调函数一直没有执行过了 路过的大神
8.png

离线

#56 2018-11-19 11:13:23

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

edt_ft5x06_ts_isr 要中断才会执行,你手动拉低那个中断引脚看不会执行?

离线

#57 2018-11-19 11:33:56

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

edt_ft5x06_ts_isr 要中断才会执行,你手动拉低那个中断引脚看不会执行?

我拉低了还是没有进去

离线

#58 2018-11-19 14:19:53

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

现在就是没有在/dev/下面没有看到input

离线

#59 2018-11-19 16:47:54

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

我现在想先创建input  就是申请中断放在最后  就想着看看能不能出现input 在dev下   也还是没有出现
12.png

离线

#60 2018-11-19 16:52:15

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:

我现在想先创建input  就是申请中断放在最后  就想着看看能不能出现input 在dev下   也还是没有出现
https://whycan.cn/files/members/1116/12.png

i2cdetect能找到设备吗?先确定硬件是不是正常

离线

#61 2018-11-19 16:56:22

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:
无情一刀 说:

我现在想先创建input  就是申请中断放在最后  就想着看看能不能出现input 在dev下   也还是没有出现
https://whycan.cn/files/members/1116/12.png

i2cdetect能找到设备吗?先确定硬件是不是正常


可以找到设备
13.png
14.png

最近编辑记录 无情一刀 (2018-11-19 16:58:27)

离线

#62 2018-11-19 23:34:48

awfans
会员
注册时间: 2018-04-03
累计积分: 155

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

看起来硬件没什么问题,软件得用心慢慢调了。

离线

#63 2018-12-05 14:48:54

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

后面弄好了 主要是因为在dts中配置中断管脚的时候 配置了 一直关联不到代码 相当于在代码中去调用dts中的中断配置时候申请不上 (这点现在还有疑惑 )
后面实在没有问题办法就在代码直接指定中断管脚申请中断,

离线

#64 2018-12-05 14:53:05

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

无情一刀 说:

后面弄好了 主要是因为在dts中配置中断管脚的时候 配置了 一直关联不到代码 相当于在代码中去调用dts中的中断配置时候申请不上 (这点现在还有疑惑 )
后面实在没有问题办法就在代码直接指定中断管脚申请中断,

代码直接指定中断管脚申请中断

这个是如何写的呢?

离线

#65 2019-04-01 20:09:17

kakatoo
会员
注册时间: 2018-10-08
累计积分: 37

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

大神最终咋整的?有详细点的思路不.....

离线

#66 2019-04-02 11:02:17

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

kakatoo 说:

大神最终咋整的?有详细点的思路不.....


哈哈 我当时主要是ft触摸芯片一直挂不上中断,你配置就按照我上面的配置为文件 ,
然后在代码中直接加入申请中断2222.png 后面就这样跑起来了 ,哈哈 一直都纳闷 为什么在配置文件中直接定义了中断管脚不可以,  还有什么不懂的可以加我QQ 1003676315

最近编辑记录 无情一刀 (2019-04-02 11:23:23)

离线

#67 2019-04-21 22:28:06

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

转自: https://whycan.cn/t_2360.html#p17976







QQ20190421194526.jpg

在店主的耐心教导之下, 终于搞定 FT5336 电容触摸屏:

1. 店主建议修改电阻:

R15  --> 1.5K
R16  --> 1.5K
R29 --> 3.3K

我实际修改:

R15  --> 1.2K
R16  --> 1.2K
R29 --> 3.7K

2. 断开 R23 电阻, R21与R23的交叉点飞线到核心板的 PWM0(PB4), 这样FT5336的中断脚就是 EINT4, 复位脚是 PE23.

3. dts 修改:

&i2c0 {
        status = "okay";

        ft6x06@38 {
                compatible = "focaltech,ft6236";
                reg = <0x38>;
                interrupt-parent = <&pio>;
                interrupts = <1 4 IRQ_TYPE_EDGE_FALLING>;
                reset-gpios = <&pio 4 23 GPIO_ACTIVE_LOW>;
                touchscreen-size-x = <480>;
                touchscreen-size-y = <854>;
                touchscreen-inverted-x;
                touchscreen-swapped-x-y;
        };

};

4. 驱动添加:

CONFIG_TOUCHSCREEN_EDT_FT5X06=y

5. Linux 启动 log 信息:

[    1.161482] i2c /dev entries driver
[    1.494509] input: EP0110M09 as /devices/platform/soc/1c2ac00.i2c/i2c-0/0-0038/input/input1















转自: https://whycan.cn/t_2360.html#p17976

离线

#68 2019-04-24 11:42:12

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

转自: https://whycan.cn/t_2360.html#p17976







https://whycan.cn/files/members/3/QQ20190421194526.jpg

在店主的耐心教导之下, 终于搞定 FT5336 电容触摸屏:

1. 店主建议修改电阻:

R15  --> 1.5K
R16  --> 1.5K
R29 --> 3.3K

我实际修改:

R15  --> 1.2K
R16  --> 1.2K
R29 --> 3.7K

2. 断开 R23 电阻, R21与R23的交叉点飞线到核心板的 PWM0(PB4), 这样FT5336的中断脚就是 EINT4, 复位脚是 PE23.

3. dts 修改:

&i2c0 {
        status = "okay";

        ft6x06@38 {
                compatible = "focaltech,ft6236";
                reg = <0x38>;
                interrupt-parent = <&pio>;
                interrupts = <1 4 IRQ_TYPE_EDGE_FALLING>;
                reset-gpios = <&pio 4 23 GPIO_ACTIVE_LOW>;
                touchscreen-size-x = <480>;
                touchscreen-size-y = <854>;
                touchscreen-inverted-x;
                touchscreen-swapped-x-y;
        };

};

4. 驱动添加:

CONFIG_TOUCHSCREEN_EDT_FT5X06=y

5. Linux 启动 log 信息:

[    1.161482] i2c /dev entries driver
[    1.494509] input: EP0110M09 as /devices/platform/soc/1c2ac00.i2c/i2c-0/0-0038/input/input1















转自: https://whycan.cn/t_2360.html#p17976


晕哥 麻烦你把这个你配置的 interrupt-parent = <&pio>;贴出来我对比下 ,
我以前配置和也是和你一样的 ,我以前一直申请不了中断是不是和那几个电阻有关系了

离线

#69 2019-04-24 11:44:15

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

pio 就在 sun8i-v3s.dtsi 里面定义了

https://github.com/torvalds/linux/blob/master/arch/arm/boot/dts/sun8i-v3s.dtsi

		pio: pinctrl@1c20800 {
			compatible = "allwinner,sun8i-v3s-pinctrl";
			reg = <0x01c20800 0x400>;
			interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>,
				     <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>;
			clocks = <&ccu CLK_BUS_PIO>, <&osc24M>, <&osc32k>;
			clock-names = "apb", "hosc", "losc";
			gpio-controller;
			#gpio-cells = <3>;
			interrupt-controller;
			#interrupt-cells = <3>;

			i2c0_pins: i2c0-pins {
				pins = "PB6", "PB7";
				function = "i2c0";
			};

			uart0_pb_pins: uart0-pb-pins {
				pins = "PB8", "PB9";
				function = "uart0";
			};

			mmc0_pins: mmc0-pins {
				pins = "PF0", "PF1", "PF2", "PF3",
				       "PF4", "PF5";
				function = "mmc0";
				drive-strength = <30>;
				bias-pull-up;
			};

			mmc1_pins: mmc1-pins {
				pins = "PG0", "PG1", "PG2", "PG3",
				       "PG4", "PG5";
				function = "mmc1";
				drive-strength = <30>;
				bias-pull-up;
			};

			spi0_pins: spi0-pins {
				pins = "PC0", "PC1", "PC2", "PC3";
				function = "spi0";
			};
		};

离线

#70 2019-04-24 11:57:55

无情一刀
会员
注册时间: 2018-09-04
累计积分: 512

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

看 发现没有区别了  为什么我以前那样配置就是中断不起来哦哦 ,

离线

#71 2019-05-21 22:47:54

guo_felix
会员
注册时间: 2018-04-12
累计积分: 16

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

想请教一下  内核启动后  i2c显示这些东西  是我内核没配置好吗 

[    2.880959] i2c i2c-0: mv64xxx: I2C bus locked, block: 1, time_left: 0
[    2.887524] Goodix-TS 0-0014: i2c test failed attempt 1: -110
[    5.040934] i2c i2c-0: mv64xxx: I2C bus locked, block: 1, time_left: 0
[    5.047478] Goodix-TS 0-0014: i2c test failed attempt 2: -110
[    5.090934] Goodix-TS 0-0014: I2C communication failure: -110
[    5.096809] Goodix-TS: probe of 0-0014 failed with error -110

离线

#72 2019-05-21 22:58:49

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

也可能是 I2C 没有上拉.

离线

#73 2019-05-21 23:09:51

guo_felix
会员
注册时间: 2018-04-12
累计积分: 16

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

也可能是 I2C 没有上拉.

晕哥是指电路上的问题吗    我用也是lichee 的底板   看原理图好像没有没有上拉的问题?

离线

#74 2019-05-22 08:19:43

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

2019-05-22_081908.png


荔枝派zero核心板pdf: https://whycan.cn/files/20171005/11/lichee_zero(核心板).pdf

第三页最底下

离线

#75 2019-05-22 09:20:26

guo_felix
会员
注册时间: 2018-04-12
累计积分: 16

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

谢谢晕哥   不好意思   我忘记说了     我用的是nano的板子,文档中I2C如下:

ts-i2c

实际是照官方文档添加设备树来的,只是说/dev 下没有input这个文件夹,内核中是直接勾选的触屏,应该也不存在文档中有加载模块的问题。如果说出现I2C bus lock 是不是也会导致/dev/input  不存在?

看控制台输出感觉i2c接口是没有问题的,不过以防万一还是测了下,上电后 SDA  SCK是可以被拉高的,是我设备树改得有问题吗

离线

#76 2019-05-22 09:43:11

晕哥
Administrator
注册时间: 2017-09-06
累计积分: 6,756

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

也有可能是别的情况, 不放心就用逻辑分析仪抓一下信号, 看CPU是否发出了 I2C 信号。

离线

#77 2019-05-22 09:46:22

guo_felix
会员
注册时间: 2018-04-12
累计积分: 16

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

也有可能是别的情况, 不放心就用逻辑分析仪抓一下信号, 看CPU是否发出了 I2C 信号。

好 我试试

离线

#78 2019-05-22 15:45:14

guo_felix
会员
注册时间: 2018-04-12
累计积分: 16

Re: 各位大神有弄过电容屏的触摸吗 不是电阻屏

晕哥 说:

也有可能是别的情况, 不放心就用逻辑分析仪抓一下信号, 看CPU是否发出了 I2C 信号。

晕哥  如果i2cdetect -y -r 0  也是显示 i2c bus lock 呢?
感觉是cpu就没有发出i2c信号是吧?好像确实没抓到东西

离线

页脚