CubeMX会自动生成串口的句柄,包含串口的全部数据,比如:UART_HandleTypeDef huart1;
串口发送数据
常用函数
HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout);作用:通过串口向外发送数据参数huart:填写串口的句柄,比如&huart1参数pData:填写要发送数据的指针参数Size:填写要发送数据的数量,单位字节参数Timeout:超时时间,单位ms,比如HAL_MAX_DELAY无限期等待返回值:返回数据发送的结果。比如HAL_OK(成功)、HAL_ERROR(发送出错)、HAL_BUSY(串口忙)、HAL_TIMEOUT(发送超时)
示例:串口发送数据
1 | /* USER CODE BEGIN 2 */ |
串口接收数据
常用函数
HAL_StatusTypeDef HAL_UART_Receive(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout);作用:通过串口接收数据参数huart:填写串口的句柄,比如&huart1参数pData:填写要接收数据的指针参数Size:填写要接收数据的数量,单位字节参数Timeout:超时时间,单位ms,比如HAL_MAX_DELAY无限期等待返回值:返回数据发送的结果。比如HAL_OK(成功)、HAL_ERROR(发送出错)、HAL_BUSY(串口忙)、HAL_TIMEOUT(发送超时)
示例:串口接收数据控制LED灯
1 | /* USER CODE BEGIN WHILE */ |