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.

[参考译文] MSP432P401R:已连接使用 DMA_INT0_SRCFLG 寄存器的示例

Guru**** 2589265 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/622491/msp432p401r-ned-an-example-of-using-dma_int0_srcflg-register

器件型号:MSP432P401R

大家好、同事、

请举一个使用 DMA_INT0_SRCFLG 寄存器的示例  

我知道在 DMA 中 、INT_DMA_INT0中断被用作或(公共)中断、用于所有 DMA 情况、但 DMA 源被写入 DMA_INT0_SRCFLG 寄存器、

有人有 这样的 C 代码示例吗?

谢谢  

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

    Yuliy、

    我相信 TI Resource Explorer 中的 driverlib 示例"dma_eusci_spi_loopback.c"实际上在 API 调用中执行此操作。 如果您提供了有关尝试使用 DMA 引擎执行的操作的更多信息、我可能会提供更详细的反馈。

    此致、

     Bob Landers

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢您的回答。
    
    >实际上、API 中的这种情况是否
    良好、您是说隐藏了? 这不是我要找的,“内”(内置)。
    
    我要寻找的是一些代码示例、这些示例展示了如何利用该
    
    DMA_INT0_SRCFLG 寄存器获取 DMA_INT0中断的原因。
    
    >如果您提供了一些有关尝试对 DMA 引擎执行的操作的详细信息
    ,我只想实施技术参考的以下部分。 参见黄色 

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

    通过"API 内部"、我的意思是有 API 例程执行此操作、您可以查看代码内部以了解如何完成此操作。  这些内容可在 c:\ti\simplelink_msp432_sdk_下找到 \source\ti\devices\msp432p4xx\driverlib\

    在本例中、请查看 dma.c 和 dma.h  API 是 DMA_getInterruptStatus(),它返回32位值(UINT32_T)。 通过该值、您可以确定哪个 DMA 通道是 DMA_INT0中断的源。 此32位值的定义可在 《MSP432P401R/M 技术参考手册 》第9.3.7节(DMA_INT0_SRCFLG 寄存器)中找到。 本质上、位31是 CH31、位30是 CH30、依此类推。  检查此项的代码片段(使用 driverlib 调用)为:

    //示例中断处理程序

    空 DMA_INT1_IRQHandler (空)

     uint32_t dma_status;

     MAP_DMA_clearInterruptFlag (0);
     dma_status = dma_getInterruptStatus();

     //此示例假定只有 CH0-2被配置并且能够生成中断请求

     if (dma_status 和 dma_INT0_SRCFLGA_CH0){
      //处理 CH0
     }

     if (dma_status 和 dma_INT0_SRCFLGA_CH1){
      //处理通道1
     }

     if (dma_status 和 dma_INT0_SRCFLGA_CH2){
      //处理通道2
     }

     

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

    问题已解决。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您可以单击此处的"已解决"/"这个已解决的问题"按钮将其关闭吗?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    是的、已解决