首先,当然是在Cube中进行相应的配置,这个就不多讲了。
之后,在生成的工程中,找到main函数,在/* USER CODE BEGIN 2 */下加入
HAL_UART_Receive_IT(&huart1,Uart1_Data_buffer,n);
这是要给接收到的数据定向,存在Uart_Data_buffer[4]中。上面函数的第三个参数应该是收到n个字节就触发中断。
然后,在stm32f4xx_it.c的最后面,也就是/* USER CODE BEGIN 1 */下编写
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
。。。。。。。。。。
HAL_UART_Receive_IT(&huart1,Uart1_Data_buffer,4);//重新给接收到的数据定向,主要是重新使能中断
}