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.

[参考译文] MSPM0L1306:DMA 可以实现以下功能吗?

Guru**** 2426460 points
Other Parts Discussed in Thread: SYSCONFIG, MSPM0G3507

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1325815/mspm0l1306-could-dma-achieve-the-following-functions

器件型号:MSPM0L1306
主题中讨论的其他器件:SysConfigMSPM0G3507

PMW 采用 边沿对齐向下计数模式、一旦计数器达到零、CC 寄存器将更新一次。

我们需要将500数据更新到 CC 寄存器、我们是否可以使用 DMA 模式来实现该功能?

如果是、如何设置 DMA?

500个数据存储在闪存中。

非常感谢

Br

凯利

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

    您好、 

    你可以尝试一下!

    在 SysConfig 中手动添加 DMA、设置 DMA 触发:

    2. PWM 触发发布者:

    --------

    对于其他 DMA 配置、请参阅使用 DMA 的其他代码示例。

    建议将 DMA 传输数据发送到 DAC: dac12_dma_sampletimegen_lp_MSPM0G3507_nortos_ticlang

        /* Configure DMA source, destination and size */
        DL_DMA_setSrcAddr(
            DMA, DMA_CH0_CHAN_ID, (uint32_t) &gOutputSignalSine64[0]);
        DL_DMA_setDestAddr(DMA, DMA_CH0_CHAN_ID, (uint32_t) & (DAC0->DATA0));
        DL_DMA_setTransferSize(
            DMA, DMA_CH0_CHAN_ID, sizeof(gOutputSignalSine64) / sizeof(uint16_t));
    
        DL_DMA_enableChannel(DMA, DMA_CH0_CHAN_ID);

    --------

    期待您的成功。

    此致、

    赫利克

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

    您好、 

    非常感谢您的回复。

    让我尝试一下、并随时向您通报最新情况。

    非常感谢。

    Br

    凯利

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

    您好、 

    太棒了!

    此致、

    赫利克