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.

[参考译文] CCS/UCD3138:关于前端外设在快速中断问题时写入 adcvalue 寄存器

Guru**** 2585275 points


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

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/918265/ccs-ucd3138-about-front-end-peripheral-eadcvalue-register-write-at-fast-interrupt-problem

器件型号:UCD3138

工具/软件:Code Composer Studio

大家好、

当我在 快速中断中更新 eadcvalue 时、我发现有时 eadcdac 的值不会更新。

我使用 TI 工具读取寄存器值 show 0。 如果写入正确、该值由 Vout 的预偏置供电。  如图所示。

如何解决这个问题?

期待您的回复

谢谢、

埃斯拉

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

    Ezra、您好!

    您使用已知的 TI-、EVM 固件、还是从头开始编写固件?

    请确保您未在平均电流模式等配置中测试此情况、其中电流环路的 DAC_value 由电压环路的输出通过硬件进行指示/强制。

    或者、您不处于 SAR 模式、其中 DAC_value 被 SAR 算法覆盖。

    如果您在标准电压模式配置中使用前端、请检查中的硬件斜坡机制是否打开、并在写入 DAC_VALUE 之前查看它是否有助于将其关闭。

    您还可以读取 DAC_STAT 值、并查看您的写入在更改 DAC 的实际位置时是否有效。

    此致、

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

    您好、Yizhak、

    感谢您的回复。

    我使用的固件是我们公司的成熟平台、在我更改代码之前、它运行良好。

    为了实现不同模块之间的同步引导、我将引导的相关部分放入快速中断中。

    我还读取 DAC_STAT 值、当 DAC_value 为0时、DAC_STAT 为0。  

    我只有电压环路、我确信在我更新 DAC_VALUE 后 、硬件斜坡机制将打开。

    此致、

    埃斯拉

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

    Ezra、您好!

    请确保寄存器 EXTDACCTRL 中启用外部 DAC 的位被清零/禁用。

    如果 您关闭硬件斜坡机制、但仍然发生这种情况、我想您的代码中的某个内容将写入 DAC_value。

    请查看代码中的所有位置、特别是写入 DAC_VALUE 的标准中断。

    此致、

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

    您好 Yitzhak、

    感谢您的回复。

    您的猜测是对的、我已经检查了我的代码并更改了该部分。

    现在、模块状态是正确的。

    谢谢、

    埃斯拉