3个版本
0.1.2 | 2022年10月26日 |
---|---|
0.1.1 | 2022年10月3日 |
0.1.0 | 2022年8月26日 |
939 在 嵌入式开发
每月 288次下载
用于 stm32f4xx-hal
32KB
401 行
FT6x06驱动程序
触摸屏控制器
FT6x06是ST公司生产的许多板上使用的自容性触摸屏控制器。FT6x06系列集成电路是单片自容性触摸屏控制器集成电路,内置8位增强型微控制器单元(MCU)。它们采用自容性技术,支持单点触摸和手势触摸。该驱动程序基于嵌入式-hal,实现了阻塞I2C模块。
FT6x06系列集成电路包括FT6206/FT6306。
描述
此存储库是使用Rust编写的FT6x06设备驱动程序,它是由ST组件驱动程序中的C代码逆向工程得到的。该存储库基于嵌入式-hal构建,提供通过微控制器的I2C总线访问触摸屏控制器以检索触摸坐标和手势数据的方法。此存储库还包含用于在基于STM32F4设备抽象层(stm32f4xx-hal)的STM32F412/413板上构建FT6206集成电路的示例。该板上触摸屏控制器的文档编写不佳。这主要基于意法半导体公司的GitHub页面 - https://github.com/STMicroelectronics/stm32-ft6x06。
许多由意法半导体公司制造的板上使用触摸屏控制器,型号为FT6x06。FT6x06系列单片集成电路是带集成8位改进型微控制单元的电容式触摸屏控制器。
示例
包含更多关于如何使用STM32F412/13板触摸屏组件的示例。在example/interface
中演示了如何使用显示屏和触摸屏创建嵌入式板的用户界面。要运行示例,
- 通过ST_Link端口(USB- mini类型B端口)连接到STM32F413 Discovery板
- 安装了一些Rust工具并切换到nightly通道
- 运行命令:
cargo run --features stm32f413,fsmc_lcd --example interface
版本 0.1.1
问题-有时,在初始化I2C总线时,STM32F413可能不会响应。执行长时间的硬复位,FT66206至少需要5mS ...
- 在STM32F413上,触摸屏与LCD共享复位GPIO引脚。
- ST7789驱动程序使用快速(10uS)复位。
- 触摸屏控制器需要5mS。
版本 0.1.2
问题 - 在等待用户输入超过30秒后,触摸屏挂起。触摸屏控制器将在30秒后进入休眠状态。一个似乎可行的解决方案是轮询触摸屏中断输出到stm32,并且只有在触摸屏控制器指示有触摸等待时才尝试读取寄存器。
ft6x06通过操作一个中断线来指示触摸准备就绪。通过在读取触摸状态寄存器之前等待轮询此中断,我们可以避免在触摸屏控制器变得休眠(一段时间内未被触摸)时出现假错误。
- 添加了等待触摸屏中断以指示触摸的功能
依赖项
~780KB