STM32使用串口DMA发送+空闲中断

/*

使用串口DMA发送+空闲中断

注意使能串口中断和DMA中断

考虑发送超时处理机制。

*/

void init_Myuart(void){

HAL_UARTEx_ReceiveToIdle_DMA(&huart1,rx_buf, sizeof(rx_buf));

}

void myuart_send(uint8_t * send_data,uint16_t lenght)

{

HAL_UART_Transmit_DMA(&huart1,(uint8_t *)&send_data,lenght));

}

void HAL_UART_TxCpltCallback(UART_HandleTypeDef *huart)

{

if(huart->Instance == USART1) {

;

}

if(huart->Instance == USART2) {

;

}

}

void HAL_UARTEx_RxEventCallback(UART_HandleTypeDef *huart, uint16_t Size)

{

if (huart->Instance == USART1) {

;

}

if(huart->Instance == USART2) {

;

}

}

void USART1_IRQHandler(void)

{

/* USER CODE BEGIN USART1_IRQn 0 */

/* USER CODE END USART1_IRQn 0 */

HAL_UART_IRQHandler(&huart1);

/* USER CODE BEGIN USART1_IRQn 1 */

HAL_UARTEx_ReceiveToIdle_DMA(&huart1,rx_buf, sizeof(rx_buf)-1);//回调完后需要再次启用

/* USER CODE END USART1_IRQn 1 */

}

相关推荐
LCG元1 小时前
STM32 USB CDC 虚拟串口开发实战:从 CubeMX 配置到 printf 重定向与稳定收发
stm32·单片机·嵌入式硬件
zcmodeltech2 小时前
源网荷储一体化沙盘模型多场景控制系统设计——基于STM32与Modbus RTU的源网荷储、多能互补、冷热电三联供全场景联动方案,服务范围覆盖全国
数据库·人工智能·stm32·单片机·嵌入式硬件
一条破秋裤2 小时前
17_ADC原理与转换模式
笔记·stm32·学习
威嵌神州2 小时前
军工加固计算机七大核心特性解析|国产化、宽温、强加固工程实现
嵌入式硬件·计算机网络·fpga开发
Brilliantwxx2 小时前
【STM32】 深度详解总线架构 哈佛总线结构
stm32·嵌入式硬件·架构
恶魔泡泡糖2 小时前
stm32F103C8T6标准库DWT应用DHT11温湿度传感器数据手册说明
stm32·单片机·嵌入式硬件
深圳市恒锐丰科技杨生2 小时前
EG1192S 10‑100V 高压集成上管降压 DC‑DC|零功耗使能 Buck 电源芯片
嵌入式硬件·硬件工程
单片机仿真设计3 小时前
【Proteus 仿真】基于 STM32 单片机鸡舍环境监控系统设计(仿真 + 源码)
stm32·单片机·嵌入式硬件·proteus·毕设
李永奉3 小时前
中科蓝讯SDK开发-提示音音频文件格式转换和压缩教程
网络·单片机·嵌入式硬件·mcu·物联网
春风解人意4 小时前
从零开始学习嵌入式P35----数据库
数据库·嵌入式硬件·学习