跳到正文
Display Engineer
触摸控制器 · FocalTech

FT6336:设置与常见问题排查

FT6336 是敦泰(FocalTech)的自电容触控芯片,采用 I2C 接口,最多支持 2 个触点,报告速率最高 100 Hz,用于约 4 英寸以内的小尺寸触控显示屏。

DEDisplay Engineer Applications Team · 显示应用工程师更新于 2026年11月10日
厂商FocalTech
类型触摸控制器
接口I2C
最大分辨率2 touch points

FT6336 概览

项目

参数值

资料来源

触点数量

2 个触点,或 1 个触点加手势

FT6336G 数据手册

I2C 地址(7 位)

0x38

Adafruit 与 Espressif 驱动

I2C SCL 时钟频率

10 至 400 kHz

FT6336G 数据手册

报告速率

最高 100 Hz

FT6336G 数据手册

工作电压

2.8 V 至 3.6 V

FT6336G 数据手册

IOVCC

独立供电,1.8 V 至 3.6 V

FT6336G 数据手册

工作温度

−40 °C 至 85 °C

FT6336G 数据手册

数据手册的特性列表给出的是 2.8 V 至 3.6 V,而其直流参数表将 VDDA 和 VDD3 列为 2.8 V 至 3.3 V。除非模块供应商另有说明,请按较窄的范围进行设计。

你使用的是哪款 FT6336?

型号

通道数

封装

面板尺寸

FT6336G

31

QFN 5×5,40 引脚

最大 4.0″

FT6336DMB

36

QFN 6×6,48 引脚

最大 4.5″

这些数据来自两份 FocalTech 数据手册:FT6336G v1.0 和 FT6X36 系列 v0.3。我们没有找到 FT6336U 的数据手册,因此关于它的信息来自驱动源代码。

读取触点数据

ESPHome 的 FT63x6 源代码会读取以下寄存器:

寄存器

内容

0x00

设备模式(ESPHome 写入 0x00)

0x02

触点数量,低 4 位

0x03

事件位于位 7:6,X 坐标高位位于位 3:0

0x04

X 坐标低字节

0x05

触点 ID 位于位 7:4,Y 坐标高位位于位 3:0

0x06

Y 坐标低字节

0x07

触点权重

0x80

触发阈值

0x88

有效触点报告速率(ESPHome 写入 0x0E)

0xA3

芯片 ID

第二个触点采用相同布局,地址向上偏移 6 字节,从 0x09 开始。ESPHome 会忽略 0x00 或 0xFF 的触点数量。

复位与上电时序

摘自 FT6336G 数据手册:

  • 复位脉冲(Trst):RSTN 引脚保持低电平至少 5 ms。
  • 复位后(Trsi):至少需要 300 ms 才开始上报触点。
  • 上电后(Tpon):至少需要 300 ms 才开始上报触点。
  • 上电前:将 RSTN 保持为低电平。同时建议将 INT 和 I2C 线也保持为低电平。
  • 重新上电:让电源电压降至 0.3 V 以下并保持超过 5 ms。

各驱动在这方面的做法不同。Linux 的 edt-ft5x06 驱动在释放复位后等待 300 ms,与数据手册一致。ESPHome 的复位流程将复位保持 10 ms,释放后不添加任何等待。Espressif 的 FT5x06 驱动将复位保持 10 ms,然后等待 10 ms。

工作模式与 I2C

数据手册列出了三种模式:

  • Active(主动):默认以每秒 60 帧的速率扫描,主机可以更改此速率。
  • Monitor(监测):默认以每秒 25 帧的速率扫描。触摸会使它返回 Active 模式。数据手册称在此模式下"串口关闭"。
  • Hibernation(休眠):掉电模式,需要复位或来自主机的唤醒信号才能退出。

Monitor 模式的说明可能影响空闲面板上的 I2C 扫描。我们并未亲自测量过这一点,因此在排查时可将其列为待排除因素:扫描时触摸一下面板。

常见症状与解决方法

症状

检查方法

扫描 0x38 地址无任何响应

确认 RSTN 为高电平,复位后等待 300 ms,然后在扫描的同时触摸面板。随后检查 SDA、SCL 和上拉电阻。

ESPHome 日志报 "FT6336U touch driver failed to start"

ESPHome 从 0xA3 读到 0。它会记录此日志并继续运行,因此请检查接线和复位时序。

库拒绝该芯片 ID

不同型号的 ID 不同:Adafruit 列出 0x06 为 FT6206,0x36 为 FT6236,0x64 为 FT6236U 和 FT6336U。请检查你的库接受哪些值。

触摸过于灵敏或不够灵敏

寄存器 0x80 的取值与面板相关。Adafruit 默认为 128,是针对其自家 2.8″ 屏幕校准的;Espressif 的 FT5x06 驱动则写入 70。不要想当然地认为任一默认值适合你的面板。

第三根手指无上报

这是芯片本身的限制:数据手册和 Linux 驱动均只给出 2 个触摸点。如需更多触摸点,请参见 GT911。

驱动支持

  • ESPHome: 使用 ft63x6 平台,可选配置 reset_pin 和 interrupt_pin。I2C 必须已配置。其文档中提到的开发板为 WT32-SC01,其源码日志中为 FT6336U。
  • Linux: 没有 FT6336 的条目。最接近的是 edt-ft5x06 驱动中的 focaltech,ft6236,支持 2 个触摸点,且必须提供 compatible、reg 和 interrupts 属性。我们尚未在 FT6336 上测试过此驱动。
  • ESP-IDF: esp_lcd_touch_ft5x06 驱动默认使用地址 0x38 和 100 kHz。其源码最多覆盖 5 个触摸点,且未提及 FT6336,因此依赖它之前请先核对你的具体型号。
  • Arduino: Adafruit 的 FT6206 库定义了 FT6336U 的芯片 ID,并默认使用地址 0x38。

相关控制器

圆形显示屏的单指触摸,请参见 CST816S。更大的面板,请参见 GT911。M5Stack Core2 是使用 FT6336U 的开发板之一。

指南与对比

FT6336 排障与常见问题

FT6336 的 I2C 地址是多少?

Adafruit 和 Espressif 的驱动均使用 0x38(7 位),Linux 在其 FT5x06 系列绑定示例中也使用同一值。我们所查阅的 FT6336G 数据手册并未给出该地址,因此请在你的开发板上通过 I2C 扫描加以确认。

我的 FT6336 为什么在 I2C 上无响应?

先检查 RSTN 是否为高电平,然后复位后至少等待 300 ms:这是数据手册规定其在开始上报触摸点之前的最短时间。数据手册还指出串口在 Monitor 模式下是关闭的,因此在怀疑接线之前,请先触摸面板并再次扫描。

FT6336、FT6336G 和 FT6336U 之间有什么区别?

FocalTech 的数据手册列出 FT6336G 具有 31 个通道,适用于最大 4.0″ 的面板;FT6336DMB 具有 36 个通道,适用于最大 4.5″ 的面板。我们没有找到 FT6336U 的数据手册。Adafruit 的库给它的芯片 ID 为 0x64,与 FT6236U 相同。

资料来源

  1. FocalTech:FT6336G 数据手册 v1.0
  2. FocalTech:FT6X36 系列数据手册 v0.3
  3. ESPHome:FT63X6 触摸屏
  4. ESPHome:ft63x6.cpp 源码
  5. Linux 内核:drivers/input/touchscreen/edt-ft5x06.c
  6. Linux 内核:edt-ft5x06 设备树绑定
  7. 乐鑫 ESP-BSP:esp_lcd_touch_ft5x06 驱动
  8. Adafruit:FT6206 库头文件

不确定哪款显示屏适合你的设计?

告诉我们尺寸、接口和主控。显示工程师会在 12 小时内回复 2–3 个方案,附规格书和初始化代码。样品 1 片起。