• 背景

在STM32开发中,可能会遇到某些情况下物理串口不够或者板卡上没有USB转串口模块。这时候可以利用Keil自带的Debug (printf) Viewer功能完成物理串口的功能。

配置完成后的功能如下图所示:

Keil中使用Debug (printf) Viewer显示串口信息代替物理串口

  • 配置方法

本人使用的是正点原子STM32F5407探索者开发板,demo使用hal库,完成led闪烁,小数显示。

点击Keil工具栏的 Manage Run-Time Environment

Keil中使用Debug (printf) Viewer显示串口信息代替物理串口

STDOUTSTDINSTDERR勾选,并设置为ITM

Keil中使用Debug (printf) Viewer显示串口信息代替物理串口

点击工具栏的扳手Keil中使用Debug (printf) Viewer显示串口信息代替物理串口,进入Debug选项,选择Settings,进入Trace,设置Core Clock为168MHz,勾选Trace Enable,将ITM Stimulus Ports设置为0x00000001和0x00000000。点击确定。

Keil中使用Debug (printf) Viewer显示串口信息代替物理串口

在需要打印的地方输入printf函数

示例:printf("Hello world = %.3f\r\n", myFloat);

Keil中使用Debug (printf) Viewer显示串口信息代替物理串口

烧录程序,进入Keil中使用Debug (printf) Viewer显示串口信息代替物理串口debug模式,按下图所示进行配置即可正常运行

Keil中使用Debug (printf) Viewer显示串口信息代替物理串口

本文例程:

参考资料:

相关文章: