请教 STC8H 硬件 TSU 触摸分频、采样时长与工作频率问题
本人采用 24MHz 主频的 STC8H 开发电压力锅,触摸引脚与数码管 IO 分时复用,咨询三点问题:1、TSU 触摸依靠比较参考电压停止计数,并非硬性固定 20000 脉冲,单通道实际检测时长该如何计算?
2、SCR 分频计算得出的开关频率,是否就是触摸计数的原生时钟频率?
3、量产小家电是否常规将触摸工作频率锁定 1~2MHz?频率超出该区间会削弱抗干扰能力,低于区间则采样耗时过长?
我计划搭配 103 参考电容、二分之一参考电压、SCR6~7 档位,触摸基线数值维持一万上下,这套参数适配厨房潮湿、可控硅电磁干扰的环境是否合适?
=============================================================================================================
触摸按键检测原理:先对参考电容Co放电至0V,然后对被检测电容Cx按一定的频率fs充电至Vcc,接着将Cx与Co连接,Cx对Co放电,不断重复上述过程,直到参考电容Co上的电压达到设定的参考值。
测量的时间计数值都是以主频时钟为计时时钟,本例放电时间为5000个主频时钟,即5000/24=208us。
参考电压选择 Vcc*1/2,在开关频率fs时Cx等效电阻为1/(fs*Cx),则根据RC充电公式简单计算可得 t = 0.693*Co/(fs*Cx)。
fs = fosc/(2*(TSCFG1+1)),本例TSCFG1=7,则fs=24/16=1.5MHz,这个就是开关电容的频率。当这个频率越快,则充电时间就越短。
参考电压选择 Vcc*1/2,
测量时间 t = 0.6931*Co/(fs*Cx)。
倍测电容 Cx = 0.6931*Co/(fs*t)
一般我推荐一个按键0.5~1ms的检测时间,24MHz对应的读数是12000~24000,调整参考电容来调整时间(读数)。
推荐开关频率fs为1.5MHz,Cx一般在5~15pF之间。
主频为24MHz,
如果TSCFG1=7,则fs=1.5MHz,此时某个键读数为24000,即为1000us,
如果TSCFG1=3,则fs=3MHz,则读数变为12000,即为500us,
如果TSCFG1=1,则fs=6MHz,则读数变为 6000,即为250us,
如果TSCFG1=0,则fs=12MHz,则读数变为3000,即为125us。
fs低一些为好。
假设Co=22nF,fs=1.5MHz,某个键无触摸时读数cnt=24000,即t=1000us,
此时电容Cx = 0.693*22nF/1.5MHz/1000us = 10.164pF。或Cx = 0.693*22nF/1.5MHz *FOSC(MHz)/读数 = 244000/读数 (pF).
假设触摸时读数变小了8%,即读数为22080,时间为920us,则此时电容Cx = 0.693*22nF/1.5MHz/920us = 11.048pF,手指触摸增加电容0.884pF。
可见,手指触摸时电容改变通常不到1pF,所以设计电路一定要尽量减小分布电容,使触摸电容变化在5%以上,达到10%则会非常优秀。
用户将产品安装好之后, 读出每个键的未触摸读数(即零点)并做自动零点跟踪,读出已触摸的读数, 计算出差值就可以判断按键是否按下.
差值是未触摸读数的5%以上为合格, 达到10%以上为非常优秀. 占比小则灵敏度太低, 请重新审视硬件设计.
=============================================================================================================
做触摸按键基本要求:尽量减小分布电容,触摸感应面积尽量大,这样触摸后读数的变化率尽量大,能得到很好的效果,一般要求不触摸时读数为10000~20000左右,触摸后读数变化5%以上,能达到10%以上会非常好。
1、铺铜时,铜箔离按键线间隔不要小于0.8mm,触摸线要细、短,以此减小分布电容。
2、网格铺铜。
3、触摸线附近不要有高速变化的信号线,避免干扰。
4、尽量加大触摸感应面积。
5、相邻触摸线可以并走一条细地线隔开,避免两键相互影响。
6、一定要做0点跟踪。
谢谢梁工,我用24M主频读数为10000~20000左右也就是1~2ms左右可以完成1次检测对吧。PCB触摸线我用0.3mm可以吗?还是用0.2mm?太细会有断线风险吗? hhh402 发表于 2026-7-5 18:12
谢谢梁工,我用24M主频读数为10000~20000左右也就是1~2ms左右可以完成1次检测对吧。PCB触摸线我用0.3mm可以 ...
24M主频读数为10000~20000,检测时间为0.416~0.833ms,再加上放电时间,大约1ms测量一个按键。
PCB使用10~12mil(0.254~0.3mm)的线即可。 明白了,谢谢梁工。 请教一下梁工:Co放电时间为什么这么长?放电电阻大约多大?103电容最少多少uS放完电?
页:
[1]