目前越来越多人采用HAL库设计STM32代码了。在使用DMA接收串口时,由于图形化中没有地方设置接收数组,很多人不知道怎么将接收数组添加进去。看了很多视频教程,炫耀成分较多,而显示细节较少。我试验了多次,发现在void MX_USART1_UART_Init(void) 函数(该函数由HAL库自动生成)中添加如下代码是合适的,如下所示。
uint8_t UART1_RX1_BUFF[200] 是自定义的串口1接收数组
/* USER CODE BEGIN USART1_Init 2 */
// 打开DMA接收
HAL_UART_Receive_DMA(&huart1,UART1_RX1_BUFF,200);
/* USER CODE END USART1_Init 2 */