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.

[参考译文] TMS320F28P650DK:DMA 触发源事件

Guru**** 2577385 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1331355/tms320f28p650dk-dma-trigger-source-event

器件型号:TMS320F28P650DK
主题中讨论的其他器件:C2000WARE

尊敬的 TI 支持部门:
我需要您的帮助以自动方式 DMA 通道启动。
下面我将介绍我的想法。

查看 TMR 版本 B 的第1698页、在表10-1中、我看到事件 ADCAEVT 和 ADCAINTx_DMA 作为从 ADC A 产生的 DMA 触发源。

我想在"ADC 转换结束"事件后启动 DMA 模块、以此为基础、
事件 ADCAINTx_DMA 看起来是适合我的选择。
我的推理正确吗?
在图18-1中、EOCx 是针对"中断块(1-4)"的输入然而我不能 选择 ADC 寄存器、我指的是表18-64、这个表属于"中断块(1-4)"。
你能帮我吗?


非常感谢
埃托尔

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

    尊敬的 Ettore:

    您可以选择 ADCEVT 或 ADCINTx 作为 DMA 的触发器。 请参阅 C2000Ware 中有关生成 ADVCEVT/ADCINT 的示例。 然后、您可以在 DMA 端选择适当的触发器、以便根据您想要选择的触发器开始 DMA 传输。  

    希望此答案可以解决您的问题。  

    谢谢、此致

    普拉莫德  

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

    您好,Pramod,

    很抱歉、我没有找到 C2000 Ware 示例中我的问题的答案。

    让我来描述一下我要查找的内容。

    表10-1所示为 DMA 触发源。

    索引为1到5的源、我链接到由块"中断块(1-4)"和"后处理块(1-4)"产生的事件、  因为表中的信号名称与图18-1中的信号名称相同。

    寄存器 ADCINTSEL1N2和 ADC INTSEL3N4配置高达 ADCINT4的中断 ADCINT1。

     如图18-1和图18-22所示、ADCINTSEL1N2寄存器的输入为 EOC[0:15]和 OSINT[1:4]。

    但是、如图18-22所示、高达 ADCINT4的 ADCINT1路由到 PIE、而不是路由到 DMA。

    关于事件 ADCINT1_DMA、..、ADCINT4_DMA 在哪个寄存器上描述?

    我无法在 TRM、doc SPRUIZ1A 上找到这些内容。

    让我继续我的推理。

    根据图18-23、ADCEVT1、...事件 ADCEVT4从 PP 块传出。

    详述:ADCEVTx 事件与应用于 ADCPPBxResult 和/或 ADCPPBxSum 和/或 ADCPPBxPSum 寄存器的"过零检测逻辑"以及"阈值比较"相关、如图18-25所示。

    正如寄存器 ADCPPB1CONFIG 中所述、清零脉冲用于清除事件、如图18-25所示。

    寄存器 ADCEVTSTAT 描述了 可用于生成事件 ADCEVT1、..、ADCEVT4的条件。

    在这些条件中、这些与通用 SOC 结束无关、而该结束时间恰好提前、因此转换的新开始与整个后处理过程相关。

    我错了吗?

    下一张图片显示了我要做的以及我要寻找的东西。

    此处是由 EPWM SOC 和中继器块触发的8样本过采样过程。

    中继器模块最后一个"转换开始"、                                    

    第一个"转换开始"由 ePWM SOC ,第一个

    我想在中继器模块 SOC8激活的最后一个 ADC 转换之后以及由 EPWM SOC 启动的新后处理过程之前启动 DMA 通道。

    此图显示了我将启动 DMA 模块的时隙:请参考红色。

    是否可以在没有固件分配或 新外设中断的情况下在信号内部路由?

    非常感谢

    埃托尔

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

    尊敬的 Ettore:

    我需要一些时间来研究你们的推理。 我会在本周结束时回复、因为我在本周和下一周的大部分时间都外出了。 提前感谢您的耐心。  

    谢谢。此致、

    普拉莫德  

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

    您好,Pramod,

    请耐心等待、我帮您解决问题。

    我认为我 理解了误解:

    我想信号 ADCINT1-4和 ADCINT1-4_DMA 代表路由到两个不同外设 PIE 和 DMA 的相同事件。

    例如、ADCINT1和 ADCINT1_DMA 是相同的事件:

    PIE 的 ADCINT1

    ADCINT1_DMA 至 DMA

    请您确认吗?

    如果我的理解正确、请忽略我之前的解释。

    谢谢

    埃托尔

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

    尊敬的 Ettore:

    您的理解是正确的。 ADCINT 和 ADCINT_DMA 都是路由到 PIE 和 DMA 的相同信号。 ADCEVT 实际上也是如此。  

    谢谢、此致

    普拉莫德