一、串口例程代码
详细目录请看图片参考,这里的串口例程来自SCI目录下,而不是UART。它与传统的 UART 兼容,但通常具备更强的 FIFO 缓冲能力和更精细的时钟分频控制,非常适合高频率控制场景。

二、代码分析
核心代码的逻辑是通过重定向(Retarget) C语言标准库的 printf 和 puts 函数,使得原本输出到控制台的内容,改由芯片的物理串口(SCI)发出。这一点以前做过STM32开发的,应该对这个很熟悉,博客上基本上都是这么做的。
这样直接可以在代码里用 printf("loop%d, PI=%f \\r\\n", i++, pi);这种语句来调试打印。

我们需要在main函数里调用串口初始化函数,以下是初始化参数:
- 使用的外设: SCIB(串口B)。
- 使用的引脚: GPIO12(TX引脚)。
- 波特率: 921600
注意波特率不常见 我们需要在串口助手里手动设置。
 实验现象: 电脑串口助手每隔1秒收到一行 "hello world" 和 "loopX, PI=3.141592"。
三、物理连接
我们不需要在通过杜邦线进行串口连接,是需要把我们的烧录器QX001插上,用JTAG进行数据通信,它集成了一路 USB 转 TTL 串口功能不得不说这个烧录器的功能还是比较强大的,既是 JTAG 调试器,又集成了虚拟串口。通讯烧录都可以通用。

非常方便。
直接观察实验现象:

|