(续ARM单片机触摸传感器原理和应用(2))
有源屏蔽示例
以下是在触摸系统中使用有源屏蔽的示例
• 第1组屏蔽
- G1_IO1 连接到 Csshield(芯片屏蔽)
- G1_IO2 连接到 Rsshield 和屏蔽铜片
• 第2组传感器
- G2_IO1 连接到 Cskey2(键2的芯片)
- G2_IO2 连接到 Rskey22 和传感器(键22)
- G2_IO3 连接到 Rskey23 和传感器(键23)
- G2_IO4 连接到 Rskey24 和传感器(键24)
• 第3组传感器
- G3_IO1 连接到 Cskey3(键3的芯片)
- G3_IO2 连接到 Rskey32 和传感器(键32)
- G3_IO3 连接到 Rskey33 和传感器(键33)
- G3_IO4 连接到 Rskey34 和传感器(键34)
• 第4组传感器
- G4_IO1 连接到 Cskey4(键4的芯片)
- G4_IO2 连接到 Rskey42 和传感器(键42)
- G4_IO3 连接到 Rskey43 和传感器(键43)
- G4_IO4 连接到 Rskey44 和传感器(键44)
要获取键22至键44的状态,使用以下内存分区:
- 分区1 用于获取键22、键32和键42的状态ID
- 分区2 用于获取键23、键33和键43的状态ID
- 分区3 用于获取键24、键34和键44的状态ID
通过这种存储器映射,Rsxx(电阻引脚)和Csxx(芯片选择引脚)上的波形是下面图表中给出的波形。
图14. 采样电容器上的波形
图15. Csshield上的波形
为了提高传导噪声的免疫力,以下Rs和Cs的值可以提供良好的性能:
• Csshield = 100纳法拉(nF)(根据本节前面的解释进行调整)
• Rsshield = 1千欧姆(kΩ)(根据本节前面的解释进行调整)
• Cskeyx = 47纳法拉(nF)
• Rskeyxx = 10千欧姆(kΩ)
图16. G2_IO2、G3_IO2 和 G4_IO2 上的波形
图17. G2_IO3、G3_IO3 和 G4_IO3 上的波形
图18. G2_IO4、G3_IO4 和 G4_IO4 上的波形
4.2.2展宽频谱
如果不使用展宽频谱,主要的噪声敏感性会在获取频率处发现,其值为 1/TCD(TCD 传输周期时长)。
ARM MCUs(微控制器单元)中的主要频率(HCLK)来自 PLL(锁相环)输出。为了提供最优的响应时间,推荐使用规格书中建议的最高频率。
MCU主频率在TSC单元中通过可编程预分频器(PGCLK)进行分频。分频后的时钟频率决定了CTPH(传输周期高)和CTPL(传输周期低)的基本时间单位,如下所示:
传输周期时长 = (1/(PGCLK)) x ((CTPH + 1) + (CTPL + 1)) + (死区时间 = 2 x 1/(HCLK)) 其中死时间为 2
通过启用展宽频谱特性(通过 SSE, 展宽频谱使能),通过向CTPH添加HCLK时间单位(周期)来实现噪声敏感性被分布在多个频率上。
SSD(展宽频谱偏差)允许设置分布频率的数量,如下所示:
从 0(1 x tSSCLK)到 127(128 x tSSCLK)
将 SSD 设置为 32 通常会得到良好的结果。 这一特性的负面影响是降低了获取速度,从而降低了响应时间。例如,SSD 设置为 127 会在每次计数上平均增加 64 x (1/48 MHz) = 1.33 微秒。对于 2000 次计数的获取持续时间,由于展宽频谱的激活,增加了 2.6 毫秒。 通常,最终用户需要的响应时间少于 60 毫秒。
假设应用程序使用三个分区,单独的获取必须在少于 20 毫秒内报告。如果此外还使用了去抖动滤波器(设置为 2),则这个时间限制必须进一步除以三。这导致一次获取的最大目标时间等于 6.6 毫秒。
一次获取时间 = 计数数量 x 传输周期时长(见上面的传输周期时长公式