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.

[参考译文] AMC1210:调制器故障中断不工作

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/800817/amc1210-modulator-failure-interrupt-not-working

器件型号:AMC1210
主题中讨论的其他器件: AMC1203

尊敬的 TI 支持:

在 AMC1210器件上运行调制器故障中断时遇到问题、希望能得到一些帮助。

我有一个 AMC1210器件连接到四个 AMC1203器件。 每个 AMC1203器件都将 MDAT 线路和 MCLK 线路连接到 AMC1210芯片上相应的 INX 和 CLKX 引脚。

我一直通过从 AMC1210的 CLKX 引脚上断开 MCLK 引脚来测试调制器故障中断。 当我执行此操作时、来自 AMC1210的 INT 中断不会触发、并且中断寄存器的内容表明任何输入都没有发生调制器故障。

根据我的理解、当 CLKX 信号小于 AMC1210系统 CLK 的1/64时、应针对给定的输入触发调制器故障中断。  当从 CLKX 引脚断开 MCLK 引脚时、CLKX 引脚将设置为常量0V (正如我在测量中观察到的那样)、这反过来会导致 AMC1210检测到 CLKX 信号小于 AMC1210系统 CLK 的1/64。 我认为这是正确的吗?

我还确保正确触发 INT 引脚、因为我已经使用高电平阈值和低电平阈值中断对其进行了测试。

下面给出了我正在使用的器件设置:

控制寄存器:0x6000

时钟分频器寄存器:0x0800

对于所有输入:

控制参数寄存器:0x0000

Sinc 滤波器寄存器:0x0DFF

积分器参数寄存器:0x0400

比较器滤波器寄存器:0x0200

此致、

Ben Gittins

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

    感谢您的发帖! 我的想法是、由于时钟被完全移除而不是减慢、因此器件无法确定 MCLK 时钟是否小于系统 CLK 的1/64、因为该等式在没有完整时钟周期的情况下是无法解析的。

    您是否尝试使用信号发生器测试此情况、以确认在手动减慢时钟周期时是否正确设置了标志?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Alex:

    感谢您的回复。

    我尝试了您的建议、将信号发生器连接到 CLKX 输入。

    我在 CLKX 引脚中输入了一个频率为1.4MHz 的方波信号(慢于系统 CLK 的1/64 (1.406MHz))。

    这样做不会触发中断。

    我还尝试将信号发生器的频率提高到10MHz、然后将其降低回1MHz、这也不会导致中断触发。

    此致、

    Ben Gittins

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

    感谢您的尝试。 请给我几天时间、这样我就可以进入实验室、看看我的一面。 我将在本周结束前为您提供答案。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Ben、

    很抱歉耽误你的时间。 仍在进行这一项工作、测试正在进行中。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Ben、

    您这边有任何更新吗?
    我发现、我尝试调试的示例程序的数据收集例程具有一些内置函数、给我带来了麻烦。 也许我的意见会有所帮助。

    1、数据收集功能暂停、直至时钟恢复。 我能够在位流中看到、时钟线被移除时数据损坏、但数据收集停止(而不是继续运行、导致锁定)、并且在时钟恢复之前不会尝试继续数据收集。
    2.另一个函数会导致调制器故障标志立即复位,然后我才能看到它切换。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Alex:

    我的方面没有更新。

    我猜这个示例程序是在 AMC1210芯片上运行的吗?
    它是否与我使用的 AMC1210芯片上的软件类似?
    如果是这样、那么如果调制器故障标志被置位、它不应该只在中断寄存器被读取后复位(假定调制器在中断寄存器被读取前停止了故障)?

    另外、我是否可以问您是否尝试重现与我相同的观察结果(缺少时钟信号不会触发调制器故障中断、1.4MHz 信号不会触发调制器故障中断)?
    如果您得到不同的结果、那么我执行测试的方式可能不正确。
    如果您观察到与我相同的结果、那么我想知道触发调制器故障标志需要哪些条件。

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

    AMC1210只是一个 SDFM、因此它具有固件、而不是软件-该软件从 MCU 加载/运行。 您是否使用 AMC1210EVM GUI 对此进行了调试? 如果是、您如何检查标志是否已设置?

    我正在使用 C2k 和数据收集程序从 AMC1210EVM 读取数据。

    我尝试重现您最初询问的错误(缺少 CLK 线)、但我尚未尝试减慢时钟速度。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Alex:

    我未使用 AMC1210EVM。 我使用的是我们自己设计的电路板。

    在我们自己的电路板上使用 Infineon XC886、我通过直接通过 SPI 读取中断寄存器来检查是否设置了调制器故障标志。 无论是否触发了 AMC1210的 INT 信号、我都可以独立执行此操作。

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

    您好 Ben、

    仍在进行这项工作、进度参差不齐-我们正在咨询 C2k 团队以获得有关我们的代码的其他帮助。   

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

    尊敬的 Alex:

    我想知道您是否在这方面取得了任何进展?

    此致、

    Ben Gittins

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

    您好 Ben、

    不幸的是、不是。 如果不立即清除、我就无法使它可靠地触发。  

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

    尊敬的 Alex:

    您是否知道在不立即被清除的情况下为什么不触发它? 这是由您使用的软件造成的吗? 还是由于芯片本身的功能?

    我还想问一下您首先必须触发它的条件吗?

    此致、

    Ben Gittins

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

    您好 Ben、

    这是由我使用的软件引起的-它是为了执行一个特定的功能而编写的、如果某些事情不正确、比如时钟丢失时、"复位"。  

    只需删除 CLKX 行、就像您尝试执行的测试一样。  

    由于我不太幸运地编辑了代码、我已经再次浏览了您的寄存器设置、并希望您尝试/确认一些内容。

    只是确认您的主 CLK 线路来自 MCU 吗? 如果可能、您能否提供原理图? 如果您不愿意在论坛上分享、请告诉我、我可以离线向您发送电子邮件。  

    您能否读回寄存器值以确认它们是否被正确写入?

    确认通道寄存器设置正在写入多个位置、因为每个通道都有一个单独的寄存器。  

    尝试启用确认标志。 将 Sinc 滤波器寄存器从0x0DFF 更改为0x0FFF。 您能看到数据传入时此标志切换吗?

    在将 MFE 设置为高电平之前是否设置了所有其他设置?  时钟分频器寄存器:0x0800

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

    尊敬的 Alex:

    很抱歉耽误你的时间。

    我无法提供原理图、但我可以告诉您 AMC1210 CLK 线上的信号由32MHz 时钟振荡器芯片提供。

    我最初提供给您的寄存器值是通过从寄存器读回来确认的。

    我之前也看到了数据传入时的确认标志切换。

    时钟分频器寄存器是我配置的最后一个寄存器、MFE 设置为高电平。

    此致、

    Ben Gittins