cubemx工具在图形界面设置了相应参数会自动生成初始化相关配置。
串口初始化过程中不同函数的作用
MX_USART1_UART_Init()函数用于设置UART的基本参数;
HAL_UART_MspInit()函数配置与UART相关的GPIO引脚、时钟使能、配置中断优先级及中断使能;
HAL_UART_Init()函数最终初始化UART外设,并将寄存器配置为正确的值。
初始化后,中断开启,收发自动触发中断。
void MX_USART1_UART_Init(void)
{
/* USER CODE BEGIN USART1_Init 0 */
/* USER CODE END USART1_Init 0 */
/* USER CODE BEGIN USART1_Init 1 */
/* USER CODE END USART1_Init 1 */
huart1.Instance = USART1;
huart1.Init.BaudRate = 115200;
huart1.Init.WordLength = UART_WORDLENGTH_8B;
huart1.Init.StopBits = UART_STOPBITS_1;
huart1.Init.Parity = UART_PARITY_NONE;
huart1.Init.Mode = UART_MODE_TX_RX;
huart1.Init.HwFlowCtl = UART_HWCONTROL_NONE;
huart1.Init.OverSampling = UART_OVERSAMPLING_16;
if (HAL_UART_Init(&huart1) != HAL_OK)
{
Error_Handler();
}
/* USER CODE BEGIN USART1_Init 2 */
HAL_UART_Receive_IT(&huart1,