GD32F303固件库开发(8)----USART收发配置
概述
本章主要配置printf进行打印。 查阅手册可以得知,PA9、PA10为串口0的输出和输入口。
需要样片的可以加Qun申请:615061293。

视频教学
https://www.bilibili.com/video/BV1ja411j76K/

样品申请
https://www.wjx.top/vm/wFGhGPF.aspx#
csdn课程
课程更加详细。 https://download.csdn.net/course/detail/37144
硬件准备
这里准备了1块开发板进行验证,分别是GD32303C_START开发板。

keil配置
microlib 进行了高度优化以使代码变得很小。 它的功能比缺省 C 库少,并且根本不具备某些 ISO C 特性。 某些库函数的运行速度也比较慢,如果要使用printf(),必须开启。

串口初始化
对串口进行配置。 使用串口时候,需要对GPIO进行复用这里把串口的 Tx 引脚配置为复用推挽输出,Rx 引脚为浮空输入。 设置USART0 通信参数为:波特率 115200,字长为 8,1 个停止位,没有校验位,收发一体工作模式,然后调用 USART 初始化函数完成配置。
串口重定向
串口重定向后就可以使用printf进行打印。
usart_data_transmit()发送
usart_data_transmit()是USART发送数据函数。 定义发送函数。
在主程序中添加代码,打印HELLO!
测试结果

中断发送
若要使用串口的中断函数USART0_IRQHandler(),需要先开启串口中断。

对于中断发送,需要usart_interrupt_enable()开启发送缓冲区空中断。 抢占优先级,数字越小,优先级越高。 若抢占优先级相同,判断子优先级,同样,数字越小,优先级越高。
定义发送变量。
串口中断定义。
测试结果

最后
以上的代码会在Q_qun里分享。Q_qun:615061293。 或者关注『记帖』,持续更新文章和学习资料!

中断接收
若要使用串口的中断函数USART0_IRQHandler(),需要先开启串口中断。

对于中断接收,需要usart_interrupt_enable()开启接收中断。 抢占优先级,数字越小,优先级越高。 若抢占优先级相同,判断子优先级,同样,数字越小,优先级越高。
定义发送变量。
串口中断定义。
测试结果
