我正在尝试USART
使用STM32F407VGT6
and CubeMX
。
我能够使用中断发送和接收数据。但是我遇到了一个我无法理解的问题:
我HAL_UART_Transmit_IT
用来发送数据。
我已启用__HAL_UART_ENABLE_IT(&huart3,UART_IT_TC);
.
这是我的代码:
int main(void)
{
HAL_Init();
MX_GPIO_Init();
MX_USART3_UART_Init();
Green_Blink(100);
Orange_Blink(100);
Blue_Blink(100);
Red_Blink(100);
HAL_Delay(100);
__HAL_UART_ENABLE_IT(&huart3,UART_IT_TC);
char buff[] = {'2','4','.','0','0'};
while (1)
{
HAL_UART_Transmit_IT(&huart3,(uint8_t*)"OK\r\n ",5);
HAL_UART_Transmit_IT(&huart3,(uint8_t*)buff,5);
HAL_UART_Transmit_IT(&huart3,(uint8_t*)"OK\r\n ",5);
HAL_UART_Transmit_IT(&huart3,(uint8_t*)buff,5);
HAL_UART_Transmit_IT(&huart3,(uint8_t*)"OK\r\n ",5);
HAL_UART_Transmit_IT(&huart3,(uint8_t*)buff,5);
HAL_Delay(1000);
Blue_Blink(100);
}
}
所以我正在发送这种数据。首先,我正在发送OK
,然后我正在发送缓冲区数据,如您所见。
但是在终端(在我的情况下是tera term)我看不到缓冲区数据。
我可以看到OK
。
我不知道为什么会这样。以及如何解决?
有什么建议么?