1. 程式人生 > >STM32 USART串列埠DMA 接收和傳送流程詳解

STM32 USART串列埠DMA 接收和傳送流程詳解

https://blog.csdn.net/weibo1230123/article/details/80506484

1.dma傳送流程

1.配置DMA傳送中斷 - NVIC_Init
2.配置串列埠中斷 - NVIC_Init
3.GPIO配置 - GPIO_Init
4.DMA傳送配置
  -DMA_Init  DMA初始化
  -DMA_ITConfig 開啟DMA傳送中斷
5.串列埠引數初始化 - USART_Init


2.dma接收流程
1.配置串列埠中斷 - NVIC_Init
2.GPIO配置 - GPIO_Init
3.DMA接收配置
 -DMA_Init DMA初始化
4.串列埠引數初始化 - USART_Init
5.開啟串列埠中斷


3.DMA傳送接收流程
1.配置DMA傳送中斷 - NVIC_Init
2.配置串列埠中斷 - NVIC_Init
3.GPIO配置 - GPIO_Init
4.DMA傳送配置
  -DMA_Init  DMA初始化
  -DMA_ITConfig 開啟DMA傳送中斷
3.DMA接收配置
 -DMA_Init DMA初始化
4.串列埠引數初始化 - USART_Init
5.開啟串列埠中斷

總結:
1.DMA接收不需要中斷
2.DMA傳送完畢觸發的是DMA傳送中斷,DMA接收完成觸發的是串列埠空閒中斷,都會觸發一箇中斷標誌位,