我在21ic上看到了“CH55X低成本USB单片机实现定制键盘、鼠标、游戏杆方案”,https://bbs.21ic.com/icview-2869094-1-1.html
阅读了源代码我发现,例程识别15个按键的方式是对6个通道扫描,根据同时是哪两个按键被按下来判别是哪个触摸按键。请问这种方式是否就是手册上提到的互电容方式实现方法?还是存在更好的方案让一个通道输出,另一个通道输入?
我在21ic上看到了“CH55X低成本USB单片机实现定制键盘、鼠标、游戏杆方案”,https://bbs.21ic.com/icview-2869094-1-1.html
阅读了源代码我发现,例程识别15个按键的方式是对6个通道扫描,根据同时是哪两个按键被按下来判别是哪个触摸按键。请问这种方式是否就是手册上提到的互电容方式实现方法?还是存在更好的方案让一个通道输出,另一个通道输入?
我用示波器观察了一下,触摸按键应该是用弛张振荡器计数实现的。请问有没有办法能把弛张振荡器的输出读取到,或者定向到某个管脚?
你好,该方案是通过touchkey 互电容方式做的,原理是通过相同周期下不同的震荡次数来区分。我们554已经内部集成了驱动,你可以通过读存器去获取这个震荡的次数。
感谢回复,我的理解是例程通过分别读取两个通道的值,再根据组合判断按键。请问这种方法是否能做到多按键无冲突?我看到别家芯片是将一个通道的张弛输出引到另一个通道上,来测量两通道间电容变化。所以想问问是否在554上也能实现。
你好,因互电容方式按下按键变化量很少,可能会导致误触发或者冲突。不建议使用互电容方式,建议使用自电容方式。