283635_zh-CN

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

283635_zh-CN

283635_zh-CN

MMA8452Q-单TAP/双击检测存在误触发信号问题<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

你好

我能够设置芯片以进行TAP或TAP-TAP检测,但我发现存在严重的误触发问题(仅通过摇动设备就会导致芯片产生点击或TAP事件)。

以下是我使用的寄存器配置:

  • ODR=200Hz(芯片在低功耗电源模式下工作)
  • LNOISE=1 启用降噪模式 (0x2A)
  • PULSE_HPF_BYP=0; PULSE_LPF_EN=0 (0x0F)
  • HPF 截止频率 =2Hz(0x0F)
  • DPA=1,ELE=1 & 脉冲检测仅适用于 Z 轴 (0x21)
  • PULSE_THSZ=1.5g(0X25)
  • PULSE_TMLT=25ms (0X26)
  • PULSE_LTCY=125ms (0X27)
  • 脉冲风速=150ms (0X28)

此外,我还注意到

当 LNOISE=1 时,即使将 PULSE_THSZ 设置为 6.36g(规范),也很容易发生错误触发信号。提到的动态范围将减小到 4g)。

当 LNOISE=0 时,即使 PULSE_THSZ 设置为 7.938g,也很容易发生错误触发。

在我看来,脉冲检测算法中的 PULSE_THSZ 因子无法正常工作。

如果有人能帮助解决这个问题或给出任何建议,我将不胜感激。

谢谢!

约瑟夫

加速度传感器Re: MMA8452Q - False Trigger Issue With Single/Double-Tap Detection<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

你好,乔希、

感谢您的回复,很抱歉回复晚了。

我现在正在准备 CES 样品,之后会再来评估您的建议。

为了便于您参考,我们想在手表中添加TAP/TAP感应功能,这将用作按键输入,因此我们只关心来自人类的TAP/TAP输入。

有一款iOS应用程序可以记录100Hz的acc数据,它用于捕获TAP-TAP模式。

所以我做了 tap-tap 模拟,我观察到了 3 件事:

1) 单次TAP的持续时间为 < 50ms

2) 2 个 TAP 之间的间隔约为 180 毫秒

3) 点击时跳跃的脉冲约为 1.5g

这就是选择这些值的原因。

你有没有试过自己,看看无论为 PULSE_THS 设置了什么值(必须低于 8g),单次 TAP 都很容易出现错误触发?



谢谢!

约瑟夫

Re: MMA8452Q - False Trigger Issue With Single/Double-Tap Detection<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

你好,肖恩-吴、

您可以通过将 1 写入 PULSE_CFG 寄存器 (0x21) 的 DPA 位来暂时禁用双击检测,但不幸的是,您无法瞬时禁用单脉冲检测。

您可以将 xdpeFE(启用双脉冲事件标志)设置为检测双脉冲,_OR_ xSpefe(启用单脉冲事件标志),但不能同时设置两者。设置这两个位与只设置 xSPEFE 位的效果相同。也就是说,在给定的轴上,你必须事先决定你是在寻找单脉冲还是双脉冲。

如果您同时需要两者,则需要读取状态寄存器以确定是否设置了双脉冲状态寄存器,否则无法检测事件是单TAP还是双击。

希望对您有帮助!

乔希

Re: MMA8452Q - False Trigger Issue With Single/Double-Tap Detection<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

亲爱的先生

我尝试了6.3配置,以启用单击和双击。当我双击时,它会检测到单点TAP然后检测到双击(SRC_PULSE 两次将是 1)。

当我只想检测双击时如何避免点击,而且我还需要单点点击功能。

谢谢。

BR、

肖恩-吴

Re: MMA8452Q - False Trigger Issue With Single/Double-Tap Detection<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

你好,约瑟夫、

感谢您使用我们的社区。我注意到的问题是你在脉冲之间设置的时间间隔很短(125mS),而且 PULSE_WIND 非常短(150mS)而且阈值很小,这就是为什么很容易触发双击。你的应用程序是什么?这些时间需要吗?

我建议您尝试配置 6.2,如下文第 15 页所示:

http://cache.freescale.com/files/sensors/doc/app_note/AN4072.pdf

启用双击检测功能后,您可以对其进行自定义。

希望对你有所帮助。

乔希

Tags (1)
No ratings
Version history
Last update:
‎02-04-2026 01:22 PM
Updated by: