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.

[参考译文] AM2632:生成旋转变压器和# 39;s 激发

Guru**** 2524550 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1343133/am2632-generation-of-resolver-s-excitation

器件型号:AM2632

您好!

我们将使用 DAC 通过 EDMA 和 RAM 中的样本表合成一个10kHz 正弦波来实现软件旋转变压器(我们已在 TI SDK 中参考了 DAC_SINE_DMA 示例)。 我们还需要使用 EDMA 通过 QSPI 与外部闪存进行通信。 这会与正弦波发生器进行交互、从而在输出端产生如图所示的干扰。

是否有办法在将 EDMA 用于其他目的的同时连续生成正弦波?

提前感谢。

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

    您好 Orazio:

    我将联系我们的 EDMA 专家、了解可能会采取的措施。 一个想法可能是允许 CPU 处理 QSPI 通信、或允许 CPU 处理 DAC 通信、同时 EDMA 忙于处理 QSPI 接口。

    此致、

    扎卡里·弗莱诺

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

    尊敬的 Orazio Taglialatela Scafati

    您是否在 DAC 和 QSPI 接口之间共享 EDMA 通道?

    此致、
    Aakash

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

    尊敬的

    我们将使用两个不同的通道:0表示 QSPI、1表示 DAC。 它们在启动时使用 EDMA_allocDmaChannel()函数进行配置。

    此致。

    奥拉齐奥

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

    您好、

    感谢您的答复。

    您建议切换到手动方法、以便在触发 QSPI 事务时立即定期加载 DAC。 为了实现这一点、我想我们需要知道要访问哪个寄存器来确定上次通过 EDMA 传输的样本。 我们找不到关于这方面的任何适当资料。

    另外、 我们不清楚的是 EDMA 架构包含2个 TPTC、根据数据表、它们可以在 L3_MAIN 互连上生成并发流量。  顺便说一下,  尽管 cslr_tptc.h 文件包含在 EDMA.h 中,但在 SDK 中的任何位置都不使用 EDMA_TC_*寄存器。

    非常感谢任何支持/澄清。

    谢谢你。

    此致。

    Orazio.

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

    您好 Orazio:

    我将让 Aakash 提供有关 EDMA 使用情况的额外反馈、对 EDMA 寄存器的快速检查、并且我的初始思想是、您可以向您提供 EDMA_TPTC_TCSTAT 寄存器位字段之一来了解正在进行的传输的状态。 我不确定是否要确定已完成的最后一次 ADC 采样、但我们将进一步研究这一点。

    此致、

    扎卡里·弗莱诺

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

    您好!

    您能否共享每个外设使用的信道号?

    EDMA 遵循队列中通道优先级的理念。

    此致、
    Aakash

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

    大家好、

    QSPI 使用通道0和 DAC 通道1。

    我们已经尝试过反过来设置通道:通过使用 DAC 0和 QSPI 1、我们可以实现连续正弦波、但根本没有 QSPI 通信。

    此致

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

    尊敬的 

    抱歉、我犯了一个错误。 我建议您使用两个不同的 TPTC、因为 EDMA 可以并行运行这些 TPTC。 只有触发信号可能被优先化、因为 TPCC 正好是一个触发信号。

    在提到的函数 EDMA_configureChannelRegion 中:

    最后一个参数、即队列编号、您可以选择对 ADC 使用队列0、对 QSPI 使用队列1。 这将在没有任何 延迟的情况下使用不同的 TPTC。 我希望这对您有所帮助。

    此致、
    Aakash

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

    大家好、

    感谢您的支持。

    这看起来实际上已经解决了我的问题。

    我被 EDMA_TEST_EVT_Queue_no 符号欺骗,以为队列没有被使用,但后来我意识到_no 后缀实际上意味着"number"(我认为)。

    此致。

    奥拉齐奥