最近用stm32 做了 个小东西, 需要串口发送数据.
用代码发送数据的时候怎么都不行
if(HAL_UART_Transmit(USART2,txbuf,sizeof(txbuf),0xffff) != HAL_OK)
{
int a=0;
a = a+1;
// Error_Handler();
}
这样写,的时候 huart->gState 一直是 HAL_UART_STATE_RESET状态.好像是没启动. 或者没初始化.
后来感觉 USART2 好像不对.于是改成
if(HAL_UART_Transmit(&huart2,txbuf,sizeof(txbuf),0xffff) != HAL_OK)
{
int a=0;
a = a+1;
// Error_Handler();
}
huart->gState 状态变成 HAL_UART_STATE_READY 了,
区别在第一个参数的形式.具体我说不清楚了 . 对C语言不是很了解…