如果串口接收数据,数据传输的比较快,这个时候还要使用同一个串口发送数据。
如果是在主函数中使用HAL_UART_Receive();,这个时候不管使用HAL_UART_Transmit();还是使用HAL_UART_Transmit_DMA();发送的数据都不完整。
我找到的方法是,使用HAL_UART_Receive_IT();进入中断,判断接收的数据是否是自己想要的,如果是,就将标志位置1,然后在主函数中使用HAL_UART_Transmit();或者HAL_UART_Transmit_DMA();发送需要发送的数据。