我正在使用stm32f0单片机。
我想要将从串口接收到的每个字节都传输出去。我会在每个从串口接收到的字节上启用中断。
我的代码非常简单。
uint8_t Rx_data[5];
//Interrupt callback routine
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{
if (huart->Instance == USART1) //current UART
{
HAL_UART_Transmit(&huart1, &Rx_data[0], 1, 100);
HAL_UART_Receive_IT(&huart1, Rx_data, 1); //activate UART receive interrupt every time on receiving 1 byte
}
}
我的电脑向stm32传输ASCII码12345678
。如果一切正常,电脑应该会收到12345678
。但是,电脑收到的是1357
。这段代码有什么问题?