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.

[参考译文] ADS7128:难以清除的警报标志

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1425620/ads7128-alert-flag-hard-to-clear

器件型号:ADS7128

工具与软件:

我正在使用 ADS7128和我 想要警报,当 模拟 阈值已被超过(窗口比较器)并告诉真相  ,设备工作非常好在他的所有方面,我可以设置阈值,平均滤波器,转换速度,等等我喜欢,我已经测试了手动和自主配置,一切似乎正常工作,但 警报标志. 此标志一旦 设置、似乎很难清除。  

我正在遵循数据表第26页 图33中所示的流程图。不幸的是、当我从 ALERT 引脚获得中断时  、不管在  固件中做了很多努力、我都无法清除此标志。 最后,我 不得不发送一个清除所有寄存器命令来清除警报标志。

   按照图33中的流程图 、然后 挂起的中断为稳定状态、似乎无法清除 EVENT_FLAG_REG。

我可以向 EVENT_FLAG_REG 发送写入00吗、或者 我是否必须单独清除每个位?

  图33中没有显示其他需要采取的行动吗?

实际上、清除挂起的 ALERT 中断的唯一方法是发出"清除所有寄存器"命令。

请告诉我您的建议  

此致

Ettore Piccirillo

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

    Ettore 您好、

     EVENT_FLAG 寄存器(0x18)是只读的、不能直接清除。 相反、若要间接清除该寄存器、需要清除 EVENT_HIGH_FLAG (0x1A)和 EVENT_LOW_FLAG (0x1C)寄存器中的相应标志。  

    例如、如果 EVENT_FLAG 寄存器的位0为高电平、则要清除该位、请清除 EVENT_HIGH_FLAG 寄存器的位0 (如果输入超过高阈值)或/并清除 EVENT_LOW_FLAG 寄存器的位0。 通过向这些位写入1来清除这些寄存器的位。

    请告诉我您是否已经尝试过、我们可以进一步调查。

    此致、
    Joel

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

    您好、Joel

    告诉 真相,我永远不会猜测清除一点,我必须写一个1在它的位置(异或)无论如何,我会尝试让你知道,如果成功。

    这就是我 疯狂的原因 数据表没有提到这个 奇怪的情况。

    非常感谢  

    Ettore

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

    Ettore 您好、

    不用担心。 我一定会在某个时候遇到同样的问题。 这些寄存器说明(数据表的第41页)更全面地介绍了该功能。

    此致、
    Joel

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

    好的、Joel

    你是对的, 我承认我 没有注意到它  

    非常感谢   

    愿上帝保佑你  

    Ettore Piccirillo