This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMAG5273:如何配置寄存器以使用 INT 引脚唤醒主机 MCU。

Guru**** 2333640 points
Other Parts Discussed in Thread: TMAG5273
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1504071/tmag5273-how-to-configurate-register-to-use-int-pin-wake-up-host-mcu

器件型号:TMAG5273

工具/软件:

您好、  

我使用连接到主机 MCU 的 TMAG5273霍尔传感器。

为了降低功耗、我将主机 MCU 置于睡眠模式、并打算使用 TMAG5273的 INT 引脚来唤醒它。

然而、尽管尝试了许多不同的寄存器设置、但我仍然无法实现所需的行为。

我尝试轮询主机 MCU 侧的 INT 引脚、并在改变 TMAG5273磁场时监控其状态。
但是、我看不到 INT 引脚状态有任何变化。

我已导出 下图中的寄存器设置。
您能帮助我配置它们以满足我需要的场景吗?

谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Adam:

    感谢您发布到传感器论坛!

    对于 INT_CONFIG_1寄存器、您还需要将 RSLT_INT 设置为1b 并将 INT_MODE 设置为1b。 需要注意的是、GUI 不支持低功耗模式(W&S 睡眠模式)。 因此、要触发转换、您需要将器件置于连续转换模式、或者使器件处于待机模式、并确保 GUI 的 Auto Read 未关闭(看起来您已经关闭)。

    此致、

    ~Alicia

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alicia:  

     根据您提供的建议进行配置后、我进行了一些观察:

    在 连续 模式下、INT 引脚始终为低电平。

    2.在其他模式(W&S/睡眠/待机)下、INT 引脚始终为高电平。

    我期望的流程如下图所示:

    您能给我提供一些寄存器设置示例吗?

    谢谢、  

    此致、  

    Adam

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Adam:

    对于 INT_STATE 位、请尝试将其设置为1h、以便中断只是快速脉冲、而不是被锁存。 锁存中断仅通过 I2C 通信清除、因此它会在很长的时间内保持低电平。

    关于 W&S 模式、 需要注意的是 ANGLE_EN 需要设置为0h。 如果需要角度计算、在器件处于唤醒状态后、您可以重新启用 ANGLE_EN 位并触发另一次转换、或使用 XY 数据结果来计算角度。

    对于待机模式、将"自动读取"设置为"每1秒"以及您的当前配置、我确实会看到 INT 引脚拉至低电平。 需要注意的是、在待机模式下、需要触发转换(每次 GUI 读取其中一个寄存器时都会发生转换)。

    请参阅下图、了解当前配置(INT_STATE 设置为1h 且 OPERATING_MODE 设置为待机模式)下 I2C/INT 引脚的外观截图:

    I2C 和 INT 引脚的缩小屏幕截图:

    每次读取后触发 INT 的放大图像:

    以下代码片段是 GUI 配置的"Register Map"页面:

    此致、

    ~Alicia

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alicia:  

    感谢您的帮助。
    我按照您的寄存器映射页面来配置 TMAG5273并观察到与您相同的结果。

    但是、这种行为不符合我的预期用例的要求。

    目前、仅在实现 I2C 通信后 INT 引脚才拉至低电平、
    而非以前。

    我需要的是、TMAG5273先将 INT 信号置为有效、
    以唤醒主机 MCU (处于睡眠模式、禁用 I2C)。
    只有在唤醒主机 MCU 后、才应启动 I2C 通信。

    最重要的是在 I2C 通信之前需要 INT 拉低。

    INT 在 I2C 无意义后拉至低电平、主机 MCU 已被唤醒。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Adam:

    如果您希望该器件能够自行采样、我建议使用连续测量模式(由 DEVICE_CONFIG_1中的 OPERATING_MODE 设置)。 这样、器件将自动触发、无需 MCU 提供 I2C。

    或者、为了省电、您可以使用 W&S 模式(由 OPERATING_MODE 设置)、这也会定期触发转换。 但是、 正如我之前提到的、GUI 不支持此模式、因此您需要使用一些外部器件发送 I2C 命令以进入 W&S 模式。

    此致、

    ~Alicia

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alicia:  

    感谢您的快速答复。

    我将继续改善系统流量和电流消耗。

    此致、  

    Adam