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.

[参考译文] TMS320F28377D:DMA 问题

Guru**** 2873850 points

Other Parts Discussed in Thread: SYSCONFIG, C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1580392/tms320f28377d-dma-problems

器件型号: TMS320F28377D
Thread 中讨论的其他器件: SysConfigC2000WARE

1f3f470b9a6137d9577c6fb4e4803bb9.png

68cb83c5-62e5-47fb-854f-4f30a2413a10.png

72ef4790b350af04cda021f8c9de7c52.png

这是我的 SysConfig 设置

ff827c82bac3623093c74e0781bf7fc2.png

1e6eeccc33066ba65439f8e1373add68.png

a4933b447955bcd9a603c777b4ada21d.png

这是我的演示代码、在 1s 计时器中断中使用软件触发器、但不起作用、我无法将数据从 DMA_src[8]移动到 DMA_DST[8]。 如何解决?

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

    下面是 ADC 设置、使用 timer0 int 触发采样、可以在大约 0.8~0.9V 的电压下测量输入引脚、但使用 ADC_readResult () 读取结果时、结果非常低、大约 0~30、问题可能是什么?

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

    您好:

    您是否在 ISR 中看到 timer0_cnt 值递增? 对于 DMA、有哪些变量类型是 DMA_src 和 DMA_DEST? 在单步切换软件触发后、您是否可以检查 DMA 寄存器的状态?

    此致、

    Delaney

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

    我使用 版本:20.3.0.14 1.9.0 CCS 来开发电路板并在观察屏幕中添加了 timer0_cnt 、当系统运行时、timer0_cnt 递增、但我发现源数据没有从 DMA_src 移动到 DMA_dst、就像在程序中我使用两个“const void 指针“dst"<xmt-block0>“ src、dst“来设置源地址和目标地址、但它不起作用。 我使用 syscfg 工具配置 DMA、而不是自行配置寄存器。

    1e6eeccc33066ba65439f8e1373add68.png

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

    我在 src 初始化过程之后设置指针“DMA""DST"“"DST",“,以“以使、使其不起作用...

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

    您好:

    很抱歉我迟来的答复。 您能否确保变量的结构与以下内容完全匹配:

    uint16_t dma_src_buffer[BUFFER_SIZE];

    const void *dma_src = (const void *)dma_src_buffer;

    对于 SysConfig 设置、您需要使用指向 GSRAM 缓冲区的常量 void 指针(而不是传递缓冲区本身)。

    谢谢、

    Delaney

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

    SYSCFG 初始化程序在分配之前刚刚设置了地址、所以我认为寄存器无法获得正确的地址、但它不起作用、使用 SYSCFG 可能会出现问题。

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

    您好:

    您能否介绍一下 SPI_ex5_loopback_DMA C2000ware 路径中的示例:[C2000ware INSTALL]\driverlib\f2838x\examples\c28x\SPI? 它展示了如何在主文件中定义数组(本例中为 sData 和 RDATA)并在 DMA SysConfig 中使用数组地址的正确语法。 能否确保语法匹配?

    此致、

    Delaney