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.

[参考译文] F29H859DU-Q1:F29 RTDMA 更新问题

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1629256/f29h859du-q1-f29-rtdma-update-issue

器件型号: F29H859DU-Q1

尊敬的专家:

 

我的客户希望通过 F29 满足以下要求:PWM 周期触发 ADCSOC0、ADCSOC1 和 ADCSOC2 转换、在最后一次 ADC 转换之后、使用 DMA 将这 3 个 ADC 结果移动到 RX 缓冲器中。 在下一次触发中、还使用 DMA 移动新的 ADC 结果、使 RX 缓冲区的地址偏移不会覆盖最后一个时间值。 缓冲区已满后、新结果将覆盖缓冲区开头的旧结果。

为了实现此功能、客户将突发大小设置为 6、将传输大小设置为 1、将目标地址突发步骤设置为 2、将目标地址传输步骤设置为 6。 但是、我们检查了缓冲区、每个触发结果都将仅在缓冲区的前 6 个字节中更新。 您可以参阅随附的演示文件: rtdma_academy_lab_test.zip 

 

您能否检查导致此问题的错误?

此致

Kita

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

    尊敬的 Kita:

    让我在我这边测试这个代码、并确定这里最简单的解决方案是什么。 将在第二天或第二天做出响应。

    此致、

    Aishwarya

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

    尊敬的 Aishwarya:

    是否对此问题有任何更新?

    此致

    Kita

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

    尊敬的 Aishwarya:

    是否对此问题有任何更新?

    此致

    Kita

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

    Kita、

    对不起,我会在一天之内得到一个更新.

    此致、

    Aishwarya

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

    Kita、

    对延迟深表歉意。 问题是源地址突发步骤设置为 0、这表明 DMA 仅从 ADCRESULT0 读取、而不是递增到其余的结果寄存器。  

    BTW、中断配置为在传输开始时发生、因此在查看结果时请记住这一点。

    此致、

    Aishwarya

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

    尊敬的 Aishwarya:

    很抱歉延迟回复、我在此处澄清了请求:在当前项目中、 在下一次触发 中、客户希望使用 DMA 来移动新的 ADC 结果、这个 RX 缓冲区的地址偏移不会涵盖最后一个时间值。  

    但在测试中、只有前 3 个缓冲器会有值、其他缓冲器仍然为空。 它们的要求是:ADC 始终进行采样、然后可以将结果移至 AdcBufRaw、直到其满。 完成后、再次存储 AdcBufRaw 开头的新数据。

     

    我们尝试了您提供的建议、但仍然无法正常工作。 我们认为这是目标问题。

    此致

    Kita

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

    Kita、

    我现在明白了。 让我看看这个,并在一周结束时回复你。 我只是想在我最后快速尝试一下。

    此致、

    Aishwarya

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

    尊敬的 Aishwarya:

    测试是否有任何更新?

    此致

    Kita

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

    Kita、

    对不起,请给我一天时间在我的结束测试  

    此致、

    Aishwarya

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

    尊敬的 Aishwarya:

    是否有关于此问题的任何更新?

    此致

    Kita

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

    尊敬的 Kita:

    Aishwarya 目前已不在办公室,直到下周。 请期待收到延迟的回复。

    此致、

    Delaney

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

    Kita、

    很抱歉耽误时间、我仍在尝试根据您的确切设置来确定。 我们确实有该示例、与您的用例类似、如果您想查看平均时间: c:\ti\c2000\f29h85x-sdk_1_03_00_00\examples\driverlib\single_core\adc\adc_ex6_Continuous_dma

    此致、

    Aishwarya

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

    尊敬的 Aishwarya:

    我们参考了演示并基于它进行了更改、但仍然失败。 因此需要找出根本原因。

    此致

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

    Kita、

    感谢您的检查、我 正在与我们的设计团队核实一个问题、最好是在星期四 Morning 联系您。 当我们弄清楚您的耐心时、我真的非常感谢您的耐心。  

    此致、

    Aishwarya

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

    Kita、

    我明天早上将与设计团队会面、之后将为您提供最新信息。

    此致、

    Aishwarya

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

    Kita、

    好消息、我们想出了答案。  需要修改以下内容: 传输大小、 源环绕大小、源 地址环绕步骤和 目标地址转移步骤。  

    •  假设目标缓冲区长度为 96、则传输大小配置为 32 个突发*每个突发 6 个字节= 96 个字节。  
    • 源绕回大小为 1、因为每次传输 1 次之后、DMA 都需要回绕回到 ADCRESULT0 的开头。  
    • 源地址后续处理步骤为 0、因为当返回到开头时、不需要递增地址。
    • 目标地址传输步骤为 2、因为在写入 6 个字节/3 个 16 位值后、DMA 需要递增 2 个字节才能开始写入接下来的 3 个时隙。

    出于测试目的、我还使用了“在传输结束时生成 DMA 中断“中断模式。 再次为延迟深表歉意。

    此致、

    Aishwarya