STM32 hal库DMA中断实验
程序员文章站
2022-06-03 20:42:39
...
//DMA内存传输到串口完成中断实验,
//1----自己编写回调函数并注册到dma句柄即可
usart.h--------extern DMA_HandleTypeDef hdma_usart1_tx;
main.c----------
int i=0;
void USART1_DMA_TX_CpltCallback( struct __DMA_HandleTypeDef * hdma);
int main(void)
{
HAL_UART_Transmit_DMA(&huart1,txbuf,20);//开启DMA传输
//注册DMA发送完成中断函数,此句要在DMA传输调用之后
hdma_usart1_tx.XferCpltCallback=USART1_DMA_TX_CpltCallback;
}
/* USER CODE BEGIN 4 */
void USART1_DMA_TX_CpltCallback( struct __DMA_HandleTypeDef * hdma)
{
i=1;
}
/* USER CODE END 4 */
//2-----------系统自带DMA发送完成回调函数
//查看HAL_UART_Transmit_DMA--UART_DMATransmitCplt--HAL_UART_TxCpltCallback
void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)
{
i=2;
}
推荐阅读
-
STM32裸机开发基础篇01-开发环境搭建(HAL库)
-
STM32 HAL库中串口空闲中断+DMA 实现串口数据的不定长接收
-
STM32单片机串口空闲中断+DMA接收不定长数据
-
STM32L051使用HAL库操作实例(4)-串口实验
-
【STM32Cube_03】使用EXIT中断检测按键(NVIC配置+HAL库中断处理机制)
-
【STM32】(F207)_HAL库开发教程(四)—串口FIFO使用
-
STM32基础教程 —— 使用HAL库(CubeMX)
-
STM32正点原子HAL库移植RT-Thread
-
STM32F103用hal库使用DMA+串口空闲中断接收数据
-
《嵌入式-STM32开发指南》第二部分 基础篇 - 第4章 定时器(HAL库)