打印
[STM32L0]

在cubeide的consol 中使用打印数据功能

[复制链接]
368|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhouyou99|  楼主 | 2025-4-14 11:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用 cubeide 和 STM32L07x开发程序,想在 consol 中使用打印,以便在 程序运行时时能够实时观察字符串或变量。能实现么,如何配置?

使用特权

评论回复
沙发
穷得掉渣大侠| | 2025-4-15 16:20 | 只看该作者
在cubeide中使用打印功能,你可以通过串口调试助手来实现

使用特权

评论回复
板凳
公羊子丹| | 2025-5-28 07:27 | 只看该作者
我在 STM32L053 上搞过,用的是 SWV 单线输出,可以在 ITM 里配置通道0,然后 printf 就能进 console 了。

使用特权

评论回复
地板
周半梅| | 2025-5-28 07:28 | 只看该作者
你是用串口还是 SWO 输出?串口的话得配置 UART + printf 重定向,SWO 就得启用 ITM 和 Trace。

使用特权

评论回复
5
帛灿灿| | 2025-5-28 07:29 | 只看该作者
CubeIDE 里面打开 SWV tracing 要设置 Debug Configuration -> SWV -> Enable,别忘了选 ITM Stimulus Port 0。

使用特权

评论回复
6
童雨竹| | 2025-5-28 07:29 | 只看该作者
如果用 UART,把 fputc 函数重定向到 HAL_UART_Transmit 就行了,我用这个方法能直接 printf。

使用特权

评论回复
7
万图| | 2025-5-28 07:31 | 只看该作者
STM32L0 系列有些型号默认关闭 debug 时钟,记得在 RCC 配置里打开 Debug 功能,不然 SWO 不工作。

使用特权

评论回复
8
Wordsworth| | 2025-5-28 07:31 | 只看该作者
如果你用的是 ST-LINK V2,也得看一下是否支持 SWV,我以前用过某个 clone 版本就不支持……

使用特权

评论回复
9
Bblythe| | 2025-5-28 07:32 | 只看该作者
要在 console 里看到输出,还得在 Debug 时打开 View -> SWV -> SWV ITM Console,不然看不到输出。

使用特权

评论回复
10
Pulitzer| | 2025-5-28 07:33 | 只看该作者
你先试个简单的 printf("Hello World\n");,如果串口配置和波特率对了,应该能在 terminal 里看到。

使用特权

评论回复
11
Uriah| | 2025-5-28 07:34 | 只看该作者
要注意 Stack 大小,printf 占堆栈比较多,我上次没加够 Heap,printf 就出问题了。

使用特权

评论回复
12
Clyde011| | 2025-5-28 07:35 | 只看该作者
如果你是想在没有串口的板子上 debug 输出,强烈推荐试试 SWV,CubeIDE 配好了之后很好用!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

14

主题

14

帖子

0

粉丝