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.

[参考译文] MSP430FR5994:使用重复突发块 DMA 时随机重新启动

Guru**** 2562100 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/601910/msp430fr5994-random-restarts-while-using-repeated-burst-block-dma

器件型号:MSP430FR5994

我正在执行重复的总线块 DMA、并且还有一个计时器中断。  随机重新启动。

有什么建议吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在 DMACTL4中设置 DMARMWDIS = 1。 其他人能否解释一下这种做法的原因?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    如用户指南第11.2.4节所述:

    "DMARMWDIS 位控制 CPU 何时因 DMA 传输而停止。 当 DMARMWDIS = 0时、CPU 立即停止、当接收到一个触发信号时传输开始。 在这种情况下、CPU 读取-修改-写入操作可能会被 DMA 传输中断。 当 DMARMWDIS = 1时、CPU 在 DMA 控制器暂停 CPU 和传输开始前完成当前执行的读-修改-写操作。"

    您可能遇到会导致 PUC 的存储器段违规、您至少可以在重启后检查 SYSRSTIV、以查看触发 MCU 复位的事件。

    此致、
    Ryan