PN学堂GD32教程第5篇——UART

发布时间:2026/5/19 6:27:23

PN学堂GD32教程第5篇——UART 本章代码仓库git clone https://gitee.com/jumayusi/unit5-gd32-usart.git5.1 串口UART基础知识并行通信在同一时刻可以传输多个二进制位我们当前使用的GD32F303使用的是16bit并行接口EXMCSTM32对应的接口一般叫做FSMC接口。数据帧结构同步通信通常需要时钟信号而异步通信通常不需要所以uart通信我们一般归类为异步通信IIC、SPI我们归类为同步通信。TTL电平RS232电平RS485RS232的物理接口标准ARM32单片机串口硬件结构内是存在CK时钟线的因此从习惯上我们把串口通信叫做USART跟官方API里面的命名同步synchronous。5.2 串口UART硬件结构主要特性开发板串口资源介绍关键寄存器与标志位奇偶校验和校验\异或校验循环冗余校验5.3 printf打印通过串口输出本节课的目标是利用单片机的串口通信功能重定向ARM Mirco库中的printf函数实现打印输出。今天在使用arm_gnu时遇到了一个奇怪的问题重定向fputc实现串口打印无效问了AI才注意到arm_gnu里面printf依赖的是syscalls.c里面的_write函数。注意我们像使用arm_clangkeil时候那样重写fputc是无效的因此syscalls.c里面之前为了避免编译器报错的空实现都需要改为弱函数然后在外部进行强实现。

相关新闻