下方以 TMAG3001 为例,详细说明了两级检测方法的实现。
- 通过按下操纵杆,获取 Z 轴中的磁通变化
该步骤用于为硬件检测设置正确的阈值,这是为软件检测设计的步骤。 - 通过使用 TMAG3001 中的 THR_Config_3 寄存器或 TMAG5173 中的 Z_THR_Confing,在 Z 轴上设置相应阈值。
阈值越大,Z 轴上需要的按下距离就越大,因此 X 和 Y 上的偏移也越大。阈值越低,意味着 Z 轴上的按下距离缩小,但如果设置为低,这可能会导致误触发。 - 通过向 INT_CONFIG_1 4-2 位写入 1h,在 INT 引脚中设置中断信号。
INT 引脚向 MCU 发送信号,以指示磁通量已超过阈值。 - 在正常运行期间,3D 线性霍尔效应传感器根据用户设置,以连续采样或触发采样模式工作。MCU 根据转换数来计算转换率或绝对变化值,从而确定是否超过阈值。
- 硬件阈值或转换率超出设定值后,器件进入中断或锁存模式。之前的 X 和 Y 轴立即记录到数组中,然后 MAG_CH_EN 设置为 4H(仅转换 Z 轴磁通)。中断清除后,主函数返回正常工作模式,并将 MAG_CH_EN 设置为 7h(启用所有三轴转换)。
图 3-4 显示了建议检测方法的详细实现流程图。