Tip / 登入 to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Translation_Bot
Community Manager
Community Manager
Community Manager

我在一個項目中,我必須在 DMA 模式下通過 SPI 定期傳輸數據。 為了避免 CPU 干預,我想要使用定時器觸發器觸發 SPI DMA 傳輸。 請為此提供建議。

1 解決方案
Translation_Bot
Community Manager
Community Manager
Community Manager

我可以通過為我選擇的 SCB 選擇正確的 DMA 通道來解決此問題。

在原始文章中檢視解決方案

0
5 回應
Translation_Bot
Community Manager
Community Manager
Community Manager

嗨 @Sachin_Patel ,

有關 PSOc6 上直接記憶體存取的使用情況,請參閱 AN228753 以了解更多有關架構和實作的資訊。

設定 DMA 傳輸基本上涉及:設定描述元、設定通道、設定描述元和啟用通道。

對於 DMA 的硬件跳接器,您需要配置觸發多工器,以將計時器的中斷/溢出信號與 DMA 輸入觸發線鏈接。

謝謝和問候,

索布哈特

0
Translation_Bot
Community Manager
Community Manager
Community Manager

感謝 @PandaS  您的回复。

另外,我嘗試將 PWM 比較/捕獲觸發信號連接到 SPI DMA TX 輸入。 在這種情況下,我的 PWM 會產生,但 SPI 傳輸不會發生。 在這裡,我分享了設備配置器工具的屏幕截圖。

SPI.PNGSPI_2.PNG

在這種情況下,是否需要配置觸發 MUX?

0
Translation_Bot
Community Manager
Community Manager
Community Manager

請分享您的 PWM、SPI 和 DMA 的初始化代碼。

可能這三個方案中的一個未正確初始化以運行所需的方案。

0
Translation_Bot
Community Manager
Community Manager
Community Manager

我可以通過為我選擇的 SCB 選擇正確的 DMA 通道來解決此問題。

0
Translation_Bot
Community Manager
Community Manager
Community Manager

感謝 @RodolfoGL 和 @PandaS 您的回复。

0