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.

[参考译文] TMS320F28388D:AES-3用户数据(通过来自 CLB 计数器的计数器)

Guru**** 2479295 points
Other Parts Discussed in Thread: TMS320F28388D, SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1462224/tms320f28388d-aes-3-user-data-via-counter-from-clb-counters

器件型号:TMS320F28388D
主题中讨论的其他器件: SysConfig

工具与软件:

你好

我目前正在从延迟 AES-3发送器板中移除 FPGA、并转到使用 TMS320F28388D 的微控制器解决方案。

但有一个元素需要反馈。

对于我的应用程序、我需要一个32位计数器、该计数器可以在使能信号(信号 LRCLK 的两个相位)上移出、并在时钟输出信号(SCLK)上移出。 这两个信号都连接到来自 AES-3波形发生器的 GPIO 上。  计数器将通过一个计数器每16Hz 更新一次、该计数器将在基于 SCLK 的2 097MHz 时钟每16Hz 翻转一次。

我了解了一些培训指南和示例、但有点不清楚如何 在 CLB 中实现这一点。

我认为、复杂的部分是 使用两个相位(边沿=高电平=左  采样、边沿=低电平=右采样)时使用 LRCLK 单路启用计数器的 MODE_0输入。

下面我附上了一张图片、用来展示我所追求的目标。

我希望有人能帮助 我。

感谢你能抽出时间。

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

    尊敬的 Ben:

    我对你的图有点困惑。 这是我对您的需求的理解、但如果我错了、请更正我:

    • 您有一个2.097Mhz 信号、其中该信号的每个脉冲使计数器1递增
    • 当计数器1达到值131062500时、它将使计数器2递增
    • 我的困惑:是什么导致计数器2中的值加载到计数器3中?
    • 当2.097Mhz 信号具有上升沿、32.77khz 信号为高电平时、计数器3中的值将右移、并且 GPIO 输出将反映计数器值的 LSB。

    这对于 CLB 来说似乎是可行的、但我想确认您要首先尝试做什么。

    谢谢!

    Luke

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

    您好、Luke

    感谢您的答复

    让我来回答您的问题:

    • 您有一个2.097Mhz 信号、其中该信号的每个脉冲使计数器1递增
      • 正确
    • 当计数器1达到值131062500时、它将使计数器2递增
      • 正确
    • 我的困惑:是什么导致计数器2中的值加载到计数器3中?
      • 这是我不知道的、因为我无法在指南中找到执行此操作的信息。 即使有"load"函数也是如此。
    • 当2.097Mhz 信号具有上升沿、32.77khz 信号为高电平时、计数器3中的值将右移、并且 GPIO 输出将反映计数器值的 LSB。
      • 部分正确。 我的要求是在32.77kHz 信号的两个脉冲上移动数据。 我想简单的边缘检测器会很好地做到这一点、但再次不确定如何在 CLB 上做到这一点。 我想它会使用两个 LUT、但我无法链接 GPIO、因为边界输入仅用于仿真。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    嗨、Ben、

    您可以使用 HLC 将计数器2中的值移动到计数器3。 您只需选择将触发加载的事件(CLB 内的某个信号)。 您是否知道何时希望装货?

    您可以使用输入滤波器在 CLB 输入上执行边沿检测。 您可以在上升沿、下降沿或任何边沿上遇到事件。

    BOUNDARY 输入配置仅用于仿真。 要配置实际输入、您需要在 SysConfig 的 CLB 菜单(与逻辑块菜单不同)中执行此操作。 并相应地配置 CLB 输入。 通常、您会使用全局或本地多路复用器和 XBAR 将 GPIO 连接到 CLB。

    谢谢!

    Luke