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.

[参考译文] OPT3101:使用外部时钟源进行频率校准

Guru**** 2439560 points
Other Parts Discussed in Thread: OPT3101

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1535397/opt3101-freq-calibration-with-external-clock-source

器件型号:OPT3101


工具/软件:

您好!

我打算将外部时钟源馈送到工程中使用的 OPT3101 的 GPIO2 引脚。

我参考 了 OPT3101 距离传感器系统校准[SBAU310]文档、其中两者都需要  GPIO2_IBUF_EN 和  GPIO2_OBUF_EN 为了使频率校准正常运行、寄存器 78h 中的位应设置为 1。

我还尝试使用 OPT3101 配置器工具 GUI 来生成示例初始化 C++文件、并选择将频率校正与外部基准时钟一起使用。  建议使用生成的 C++文件 不会 来设置 GPIO 2_OBUF_EN  位。

有人可能会帮助您说明校准文档或配置程序 GUI 工具中哪一个是正确的?

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

    您好 Kenneth、  

    感谢您的提问、并对您的困惑深表歉意。 我查看此信息是为了确认正确的文档、并开始在发现不正确的文档中实施更改的过程。 我将于明天向您更新我的调查结果、一旦确认。  

    谢谢您、  

    Joseph Scherphorn

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

    您好 Joseph、

    感谢您抽出宝贵时间进行研究。  非常感谢。

    是否对此进行了任何更新?

    BR、

    Kenneth

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

    请设置 GPIO2_IBUF_EN  

    请勿设置 GPIO2_OBUF_EN  

    当您希望  通过 GP2 输出数字信号 DIG_GPO_0 或数字信号 DIG_GPO_1 时、应设置 GPIO2_OBUF_EN、如下所示。

    如果您有任何其他问题、敬请告知。  

    谢谢您、  

    Joseph Scherphorn

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

    您好 Joseph、

    感谢您的答复!

    请查看  第 4.1.1 节“使用外部基准时钟进行动态频率校准“下的 OPT3101 距离传感器系统校准[Doc # SBAU310]。

    下面是它所说的:

    您是否暗示该表不正确?

    谢谢您、

    Kenneth

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

    您好 Kenneth、  

    我还没有时间检查这两种配置。 但我认为、启用 GP2 的输出缓冲器并不需要在该引脚上获取外部时钟信号。   我将确认何时可用、但它可能在两种配置下都有效、因为 GPO2_OBUF_EN 可能对您的用途多余。  

    谢谢您、  

    Joseph Scherphorn

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

    谢谢、Joseph!

    根据数据表/系统校准文档、FREQ_COUNT_READ_REG 将包含频率校准的结果。

    我的测试显示了 以下结果(请注意 GPO2_IBUF_EN 始终= 1 ):

    如果 GPO2_OBUF_EN = 0、则  FREQ_COUNT_READ_REG 中的值不一致(即我读取该寄存器时数字不相同)

    如果 GPO2_OBUF_EN = 1、则在 每次读取 FREQ_COUNT_READ_REG 时、得到完全一致的值 (16384)。

    问题:启用连续频率校准时、我是否应该期望从 FREQ_COUNT_READ_REG 中读取一致的值(即 16384)?

    翻转 GPO2_OBUF_EN 位似乎提供了不同的读数、因此我真的要确保我设置正确。

    请提供建议。  目前、我认为 OPT3101 距离传感器系统校准[Doc # SBAU310]是正确的。

    此致、

    Kenneth

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

    您好 Kenneth、  

    您能告诉我  当 GPO2_OBUF_EN = 0 时、FREQ_COUNT_READ_REG 值有多大的变化?

    谢谢您、  

    Joseph Scherphorn

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

    请查看屏幕截图。  我有两个 OPT3101 同时运行、它们由 MCU 提供相同的外部时钟源 (~98kHz) 馈送。

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

    尊敬的 Kenneth:

    对延迟深表歉意。 我们正在研究这一点、很快会回来联系您。

    谢谢、
    Daniel