
基于I2C(TTL)模块化分区触控方案[maitouch3.1]
简介
模块化分区触摸屏控制方案 组件由主板+触摸传感器组成 I2C为TTL电平 支持模块自动识别 支持异步+DMA采样 全局模块化组成 灵活搭配拓展 内置触摸模块 AD7147 GTX312L PSoC
简介:模块化分区触摸屏控制方案 组件由主板+触摸传感器组成 I2C为TTL电平 支持模块自动识别 支持异步+DMA采样 全局模块化组成 灵活搭配拓展 内置触摸模块 AD7147 GTX312L PSoC开源协议
:LGPL 3.0
描述
特性
1. 基础输入接口
支持同时4组外接电容触摸传感器 使用HY2.0 4P反向线材 实测各自线材长1M情况下未发现稳定性问题
同时支持9组XH2.54 3P 5V光电/霍尔开关 + 3组 XH2.54 2P 普通开关(V3.1版本)
2.方案设计特性
主板与传感器物理分离 独立电源滤波 主板使用RP2040作为主控 使用PlatformIO构造项目
固件贯彻模块化设计 三层构造 HAL >> 协议层 >> 服务层
贯彻DMA满载策略 几乎所有HAL层都给到异步DMA接口且投入使用
主板侧单TYPE-C线即可使用全部功能 主板内置一组CH334 两组CH343 USB 其中一组USB2.0给RP2040
传感器侧即插即用 自动识别型号加载对应驱动 全局模块化设计 基本只要是I2C传感器都可以轻松添加支持
轻松添加协议层 支持到各种分区触控应用场景 当前协议内置mai2serial mai2light和HID (Keyboard TouchScreen)
内置UI引擎 基于预设菜单组件+底层绘制接口 轻松添加页面支持到新功能
内置基于JSON LittleFS的配置管理器 提供灵活接口供其他服务模块使用
3.主板支持双供电 允许一个辅助的TYPE-C供电 第二个TYPE-C进行高速USB2.0传输
4.UART0支持硬件流控 且两个UART通道均支持至高6Mbps速率
5.主板和传感器设计内置硬件电源滤波 基本不受供电干扰
6.支持一个0.96寸TFT屏幕显示状态与修改配置 使用板载侧摇杆进行控制
7.板载12个XH2.54 2P 按键位 使用MCP23S17以10Mhz的SPI进行轮询 轮询实测可达10K+ 如果想接3P光电 自行修改即可 布线存在预留
8.板载ESD 一般情况不会损坏(即使干燥环境 参考地区西安) 按键接口支持至高20V(存在肖特基二极管)
传感器模块选型
| GTX312L | AD7147 | PSoC(CY8C4045LQI-S411) | |
| 通道数 | 12 | 13(12最大同时触摸)+1独立屏蔽电极 | 12 (SWD通道可作为屏蔽电极 此时可用为11) |
| 采样速率 按全通道速率(ms) | 25ms | 7.8ms | 0.6ms |
| 传感器间抗干扰能力 | 检查具有强抗干扰 基本不会干扰 | 易耦合上临近传感器电极激励源造成采样跳变 | 配套固件测试尚无显著干扰问题 |
| 特性 | 模块采样速率较低 但对外键玩家应该足够 他有很强的抗干扰能力和触摸稳定性 | 基于CDC的电容式触摸传感器 对环境和电极间EMC屏蔽要求很高 灵敏度灵活性最佳的一档 但前提是没有干扰 否则不要用它 参考激励频率 250KHz 支持轮指响应 |
基于CSD的自激式电容传感器 主要其内部有一个48Mhz的CortexM0+ MCU可运行英飞凌的采样算法 外加其激励源频率为6Mhz固定频率采样 频率抗干扰占优 很好抑制了噪声问题 特点自适应能力强 基本不需要设置即可获得不错的效果 触摸灵敏度重复精度较高 响应速度很快 用这个传感器尽量避免低电容面缓慢靠近电极表面 容易被当噪声滤掉 正常使用该问题不明显 支持轮指响应 |
| 使用复杂度 | 设置好地址即插即用 | 设置好地址后需要校准才能使用 主板内置了校准算法 校准一次可用很长时间 | 需要烧录固件 固件见底部 烧录完成后再做地址跳线 地址跳线复用了SWD 后面更新固件需要先清理跳线才能更新 当固件烧录完成且设置好地址后 即插即用 |



固件
主板固件即仓库根目录pio项目 固件相关特性请直接查看仓库README
所有需固件的传感器模块固件源码位于根目录 SensorFirmware 文件夹下
附件给出CY8C4045LQI-S411的烧录组件和配套的Programmer程序 可直接使用的烧录脚本
烧录固件
固件从Github仓库链接中获取 正常直接使用release版即可 或自行拉下编译
固件仓库地址: NKQC/maimai-input-control-firmware: 专用于maimai的高响应速度和高度自定义的分区触控屏控制器的固件部分
烧录主板只需要一根USB2.0 TypeC线 同RP2040烧录方式 连接电脑后 拖拽elf固件到虚拟盘符即可
如果一切正常 主板INFO灯会间歇500ms闪烁 如果配备TFT屏幕 则会显示状态页面
升级固件不会造成配置丢失 除非使用了清空固件
使用PSoC触摸传感器则需要为每个传感器烧录固件 参考如下
需要物料:
1.CMSIS-DAPLINK一个
2.MX1.25 5P转杜邦头连接线
(1)用转接线连接好PSoC传感器(5P MX1.25接口 从板边到板内依次为[VCC RESET SWD-CLK SWD-DATA GND] 模块支持5V/3.3V)和DAPLINK
(2)使用附件带的烧录脚本烧录hex文件即可 附件附带了一个测试固件在文件夹根目录 正常双击bat文件即可烧录
(3)当烧录完成时 如果一切顺利 触摸状态改变时PSoC上的指示灯会闪烁一下
PSoC固件的I2C寄存器定义参考仓库中PSoC工程根目录readme文件
烧录器参考
设计图
未生成预览图,请在编辑器重新保存一次BOM
暂无BOM
克隆工程

评论