创建工程
开启串口1 DMA
开启串口中断
设置时钟树
生成代码
MDK中进行编写
首先写要发送的缓存
uint8_t Rdata;
uint8_t TdataDMA[] ={"Welcome to 311 learn!"};
开启 DMA
HAL_UART_Receive_DMA(&huart1,&Rdata,1);//触发DMA接收
HAL_UART_Transmit_DMA(&huart1,TdataDMA,sizeof(TdataDMA));//触发DMA发送
中断回调函数
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
HAL_UART_Transmit(&huart1,&Rdata,1,0xffff);//触发中断发送
//HAL_UART_Transmit_DMA(&huart1,&Rdata,1);//触发DMA发送
HAL_UART_Receive_DMA(&huart1,&Rdata,1);//触发DMA接收
}