8.3.3 串口发送和接收函数

更新于 2026年10月10日 版权声明
8.3.3 串口发送和接收函数

1.串口发送函数HAL_UART_Transmit()

串口的发送函数有轮询模式发送,通过查询发送结束标志判断数据是否发送结束;有中断模式发送,通过是否发生中断判断数据是否发送结束;有DMA模式发送,通过DMA中断判断数据是否发送结束。3种串口发送函数如表8.7所示。

表8.7 串口发送函数

图示

例如要发送字符“STM32F”,程序如下。

图示

2.串口接收函数HAL_UART_Receive()(https://www.daowen.com)

串口的接收函数有轮询方式接收,通过查询接收标志判断是否有数据装到缓冲区;有中断方式接收,通过是否发生中断判断是否有数据接收到缓冲区;有DMA方式接收,通过DMA中断判断是否有数据接收。3种串口接收函数如表8.8所示。

表8.8 串口接收函数

图示

串口接收数据一般采用中断或DMA的方式,中断方式接收适合数据量较小的场合,DMA方式接收适合数据量大的场合。3种函数均是接收定长数据,若接收不定长的数据,可以采用空闲中断和DMA联合的方式实现,此种方法将在DMA章节讲述。

例如,通过串口中断每次接收一个数据,接收函数在串口回调函数中,程序如下。

图示

↑上一章 ↓下一章
关注公众号获取验证码
复制内容需要验证码(7.99元/天)