1.cubemx环境配置
异步模式 并且开启了中断,如果采用扫描接收的话cpu会打满 这里为了减小压力,采用中断接收
设置中断优先级和分组
波特率 奇偶校验为 有效数据长度设置等等
2.代码
HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout){}
UART_HandleTypeDef 句柄
pData 数据 我们要传送的数据
uint16_t Size 数据大小
uint32_t Timeout 溢出时间
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart){}
接收中断的回调函数 在这个函数里面添加代码
HAL_StatusTypeDef HAL_UART_Receive_IT(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size){}
函数传入接收的缓冲区地址 接收数据的大小 返回接收的状态
注意:这里在回调函数中调用函数才可以进行多次,如果在main函数中只能进行一次读数据操作