- 背景
在STM32开发中,可能会遇到某些情况下物理串口不够或者板卡上没有USB转串口模块。这时候可以利用Keil自带的Debug (printf) Viewer功能完成物理串口的功能。
配置完成后的功能如下图所示:
- 配置方法
本人使用的是正点原子STM32F5407探索者开发板,demo使用hal库,完成led闪烁,小数显示。
点击Keil工具栏的 Manage Run-Time Environment
将STDOUT,STDIN,STDERR勾选,并设置为ITM
点击工具栏的扳手,进入Debug选项,选择Settings,进入Trace,设置Core Clock为168MHz,勾选Trace Enable,将ITM Stimulus Ports设置为0x00000001和0x00000000。点击确定。
在需要打印的地方输入printf函数
示例:printf("Hello world = %.3f\r\n", myFloat);
烧录程序,进入debug模式,按下图所示进行配置即可正常运行
注意:ST-Link要使用标准接口的,要引出CLK、IO、GND、TDO、VCC。要使用Keil的ITM需要使用ST-Link的PB3脚(TraceSWO功能),对应下图的TDO。具体参见参考资料3.
本文例程:
参考资料: