首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Linux驱动开发-编写FT5X06触摸驱动

前言 这篇文章介绍在Linux下如何编写FT5X06系列芯片驱动,完成触摸屏的驱动开发, FT5X06是一个系列,当前使用的具体型号是FT5206,它是一个电容屏的触摸芯片,内置了8位的单片机(8051...所说起触摸屏大家都不会陌生,现在手机、手表、家电、很多地方都支持触摸了。最开始的触摸屏都是电阻屏,在诺基亚时代的时候,使用的触摸屏都是电阻屏,后来Android兴起的时候,手机都向电容屏发展了。...当前使用的屏幕型号是S702,这个屏幕是友善之臂生产的LCD屏,S702这款屏幕采用的触摸芯片就是FT5206,引出了IIC接口,支持笔中断,官方的内核里也提供了例子驱动可以参考。...编写触摸驱动 Linux下编写标准的触摸驱动需要使用到输入子系统,当前文章的重点是读取触摸屏的坐标,所以示例代码里不会加输入子系统的代码,只是在驱动层完成触摸屏笔中断响应,触摸屏的坐标点获取并打印。...); /*模块的许可证*/ MODULE_LICENSE("GPL"); /*模块的作者*/ MODULE_AUTHOR("wbyq"); 3.2 驱动端代码 #include <linux/kernel.h

2.4K20

【调试笔记】韦东山:在100ASK_IMX6ULL板子上支持其他型号的屏幕

2.移植思路 LCD除了显示之外,它的表面通常还贴有一个触摸屏。 所以我们移植的是2个设备的驱动:LCD、触摸屏。...LCD驱动在内核中已经有了,并且很完善,我们只需要修改设备树就可以:修改时序等LCD参数,修改背光引脚等板子参数。 触摸屏的驱动在内核中一般也有了,各厂家用的触摸屏IC可能不同。...4.移植触摸驱动 4.1 确定触摸屏型号 还是那句话,如果有触摸屏数据手册,看手册就好了。 如果没有手册,怎么办?...重新编译设备树,更新到板子上,发现触摸屏还是不能用。 这还得往内核里加驱动。 4.3 重新配置内核添加驱动 这设备节点对应哪个驱动啊?...4.7 gt9xx芯片固件更新 gt9xx芯片功能强大,可以写入配置信息让它支持不同分辨率的触摸屏。 但是出厂的触摸屏IC一般都已经写好配置信息了,我们不应该让驱动程序去修改这些配置信息。

2.9K30

18.Llinux-触摸驱动(详解)

input_handler_list链表中 搜索input_register_handler注册函数,就可以看到都是事件处理层里的函数: 所以最终如下图所示: 右边的驱动事件处理,内核是已经写好了的,所以我们的触摸屏只需要写具体的驱动设备...linux/module.h> #include #include #include #include <linux..., 不编进内核和模块 然后make uImage 编译内核 将新的触摸驱动模块放入nfs文件系统目录中 7.2然后烧写内核,装载触摸驱动模块 如下图, 通过 ls -l /dev/event* 命令可以看到我们的触摸驱动的设备为...、去抖、校准等功能,通常作为触摸驱动的适配层,为上层的应用提供了一个统一的接口。...校验界面 运行测试如下图所示,能随意画图: 最终,触摸驱动测试成功

3.3K91

4.100ASK_V853-PRO开发板支持4寸MIPI屏

1.添加新驱动驱动程序添加到 内核的lcd驱动目录下: tina-v853-open/kernel/linux-4.9/drivers/video/fbdev/sunxi/disp2/disp/lcd...buildroot env.cfg linux-4.9 sys_config.fex uboot-board.dts 其中board.dts为内核设备树,uboot-board.dts为uboot...通过拿到的屏幕资料包,我们可以知道该MIPI屏的触摸芯片为FT5336,下面我们使用全志已经内置好的FT6336触摸驱动。...-02/#39 7.2 修改内核配置 ​ 由于我们之前适配过了RGB屏触摸驱动,所以需要进入内核中修改为我们使用的新驱动,进入如下目录中,按下空格键取消勾选之前的触摸驱动gt9xxnew touchscreen...由于Tina使用的默认绑定的触摸节点为/dev/input/event0,我们需要修改lvgl驱动头文件中绑定的节点为我们触摸驱动上报数据的节点,我们触摸驱动上报的节点为event2,所以需要进入 tina-v853

59220

【i.MX6ULL】驱动开发13——电容触摸驱动实践(下)

上篇文章介绍了电容触摸驱动的编写,包括设备树的修改和驱动程序(IIC驱动+中断+input子系统),并通过将触摸坐标值实时打印出来的方式,对触摸功能进行测试。...1 tslib的使用 Tslib是一个开源的程序,能够为触摸驱动获得的采样提供诸如滤波、去抖、校准等功能,通常作为触摸驱动的适配层,为上层的应用提供了一个统一的接口。...触摸点的信息通过一系列的 ABS_MT事件上报给linux内核,这些事件的定义在include/uapi/linux/input.h中: 比较常用的有: ABS_MT_SLOT :上报触摸点ID ABS_MT_POSITION_X...,实际上如果使用了多点触摸,可以将单点触摸的上报去掉,如下: 去掉后,再次测试,可以看到只有多点触摸数据的上报: 4 将触摸驱动编译到内核 自己编写的触摸驱动,每次系统启动后,都要手动加载驱动模块后才能使用...方法如下: 将自己写的触摸驱动文件拷贝到Linux内核的drivers/input/touchscreen/目录下: cp gt911.c ../..

1.2K30

基于瑞芯微RV1109 Linux触摸屏GT911驱动调试心得

节点的情况 很明显这里可以看到系统已经配置了i2c-0、i2c-1、i2c-3、i2c-4、i2c-5,我们可以看下原厂在设备树里面的支持情况: gedit kernel/arch/arm/boot/dts...1.2、使用i2cdetect工具确定设备地址 由于我的触摸屏是连接在I2C5上,硬件原理图如下所示: 但是我还没有实现它的驱动,所以可以通过i2cdetect工具来确定设备的I2C地址是多少,ARM...2、GT911驱动移植 2.1、配置Linux内核支持gt9xx GT911在Linux内核中已经支持了,位于以下路径,如果没有的话就需要跟触摸屏厂商要驱动代码,如果要不到那么就拿着Datasheet自己干吧...max-y 触摸Y方向的分辨率,由于我的触摸屏是1024*600,项目上需要竖屏触摸,所以X方向的分辨率配置为1024。...,TP驱动成功!

7K70

DRV_03_编写最简单的触摸驱动程序_基于QEMU

视频观看 百问网驱动大全 List item 编写最简单的触摸驱动程序_基于QEMU 参考资料: STM32MP157\source\A7\05_Input\03_touchscreen_qemu...* 深入学习内核及驱动 * 使用QEMU可以非常方便地调试内核、查看驱动程序执行过程 * 有助于深入研究内核及驱动 * 学习某些驱动时可以用QEMU模拟硬件,简化硬件的操作,把精力放在驱动程序框架本身...编写驱动程序 request_irq 在中断处理函数里 上报按下、松开的事件 如果触摸屏被按下,启动定时器 如果触摸屏被松开,取消定时器 在定时器函数里 如果触摸屏还是被按下的状态.../ 内核 arch/arm/boot/dts/100ask_imx6ull_qemu.dtb // 设备树 复制到如下目录: $ cd ubuntu-18.04_imx6ul_qemu_system/imx6ull-system-image...如果在驱动程序里设置属性位: __set_bit(INPUT_PROP_DIRECT, g_input_dev->propbit); 那么tslib可以自动扫描到触摸屏设备, 使用tslib时就不需要设置这些环境变量

1.2K30

Linux驱动之网卡驱动剖析

Linux 网络设备驱动架构 驱动架构自上而下分为4层: 协议接口层 设备接口层 设备驱动功能层 网络设备与媒介层 协议接口层 协议接口层主要功能是给上层协议提供接收和发送的接口。...传递的数据被描述为套接字缓冲区,用struct sk_buff结构描述,该结构体定义位于include/linux/skbuff.h中,用于在Linux网络子系统中的各层之间传输数据,该结构在整个网络收发过程中贯穿始终...设备驱动功能层 类似于字符设备,struct net_device结构体也提供了一个操作函数集struct net_device_ops来描述对网卡的各种操作。...源码分析 笔者基于的是 S5PV210 的 DM9000 驱动,会大体上对 DM9000 的驱动源码进行分析, 分析源码位于DM9000 源码 platform 框架分析 DM9000 的驱动是基于 platform...return platform_driver_register(&dm9000_driver); } 该函数调用了 platform_driver_register 函数注册了一个平台总线驱动

55.5K20
领券