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.

[参考译文] TMDS64EVM:使用计时器中断信号启动 DMA

Guru**** 2396125 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1469908/tmds64evm-start-dma-using-timer-interrupt-signal

器件型号:TMDS64EVM

工具与软件:

您好、TI 支持团队。

我想使用 AM64 CR5内核上的计时器中断来运行 DMA。
是否可以在不编写代码以在定时器中断处理程序函数中启动 DMA 的情况下将定时器中断信号作为触发器运行 DMA?
如果您有任何示例代码、请告诉我。

是否可以同步其他两个计时器(例如 Timer1和 TIMER2)并开始计数?
如果有办法做到这一点、请告诉我代码。

SDK 为 mcu_plus_sdk_am64x_09_00_00_35。

此致、
今泉清正。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="574260" url="~/support/processors-group/processors/f/processors-forum/1469908/tmds64evm-start-dma-using-timer-interrupt-signal "]我想使用 AM64 CR5内核上的计时器中断运行 DMA。
    是否可以在不编写代码以在定时器中断处理程序函数中启动 DMA 的情况下将定时器中断信号作为触发器运行 DMA?
    如果您有任何示例代码、请告诉我。

    [quote userid="574260" url="~/support/processors-group/processors/f/processors-forum/1469908/tmds64evm-start-dma-using-timer-interrupt-signal 是否可以同步另外两个计时器(例如 Timer1和 TIMER2)并开始计数?
    如果有办法这样做、请告诉我代码。

    您好, 今泉清正。

    这里的用例是什么?  

    是否要将数据从内存传输到内存或从外设传输到内存或从内存传输到外设?

    MCU+SDK 不支持您的要求。

      您能说出您的全部要求吗?  

    因此、我可以尝试帮助您解决这些问题。

    此致、

    Anil。

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

    想讨论一些用例等
    是否可以通过电子邮件或其他方式(而不是 e2e)进行私下沟通?
    (如果需要咨询费用、我将继续使用 e2e。)

    此致、
    今泉清正。



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

    您好、 今泉清正、

    我需要检查这方面的最佳做法与其他专家.

    此致、

    Anil。

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

    您好、Swargam Anil

    关于我在私人聊天中提出的问题,你什么时候可以得到回复?

    此致、

    今泉清正。

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

    您好、今泉清正、

    我看到了您的要求、需要进一步澄清。  

    目前、我正在进行其他升级、您可能会在下周收到回复。

    此致、

    Anil。

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

    您好、Swargam Anil。

    从那时起、进展如何?
    请联系我们。

    此致、
    今泉清正。

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

    您好、 今泉清正、

    很抱歉回复延迟。 您的要求如下。

    对于128KHz、我们需要在 SPI TX 线路上传输1Byte。

    完成上述32个事务(完全完成0.25ms (4kHz))后、我们需要使用不同的缓冲区在 SPI 线上传输相同的一个字节的数据。

    根据我的分析、DMA 不用于较低的数据速率(如1字节)、使用 DMA 无法满足您的要求。

    我希望您的应用能够仅使用 SPI +计时器实现、并使用 SPI LLD 驱动器。

    在这种情况下、SPI 会直接写入寄存器级别。

    但是、在这里、7.8usec 会频繁中断。

    实施方法:
    1.配置计时器:
    •将其设置为在每个7.8 µs (128kHz)期间触发中断。
    •在 ISR 中、将1个字节写入 SPI TX 寄存器。
    2.在寄存器模式(LLD)下使用 SPI:
    •将数据直接写入 SPI 数据寄存器。
    •确保 SPI 外设在发送下一个字节之前完成传输。
    3.处理4kHz 缓冲开关:
    •在32次 SPI 传输(0.25ms)后、切换到另一个缓冲区。
    •此逻辑可在计时器 ISR 中处理。


    此致、
    Anil。