1. 程式人生 > >STM32 DMA的理解與運用

STM32 DMA的理解與運用

DMA(Direct Memory Access)直接儲存器訪問,可以講資料從一個地址空間複製到另一個地址空間。

為什麼出現了DMA?

由於進行資料傳輸過程中,會一直佔用CPU,而CPU不能執行其他的程式。所以就想找一種方式來“自動”控制資料的傳輸,此時CPU就可以幹其他事情。

STM32中,很多外設都可以產生DMA請求,例如 串列埠,定時器,ADC,SPI, I2C等等。

再STM32f103中,有兩個DMA控制器,DMA1有7個通道,DMA2有4個通道。不同的通道可以被不同的外設啟用。所以使用不同的外設產生DMA時候,一定要進行通道匹配,不同的通道和不同的外設有固定的聯絡。