搜索
查看: 42833|回复: 76

[STM32F3] 【STM32F303开发】+ 使用SWO输出调试信息到Debug Viewer窗口

  [复制链接]

该用户从未签到

60

主题

2111

帖子

31

蝴蝶豆

版主

最后登录
2023-6-21
发表于 2015-6-15 23:42:25 | 显示全部楼层 |阅读模式
【STM32F303开发】+ 内部Flash模拟EEPROM

【STM32F303开发】+如何解析GPS数据

【STM32F303开发】(五)TIM定时器PWM的输出与捕获


Jlink/STLink自带一个SWO接口,使用这个接口配合keil可以输出一些简单的调试信息,在没有串口可以使用的时候,SWO也可很方便的打印一些信息,比如F303RE这个板子在我的电脑上一直没法安装虚拟串口的驱动,所以我可以用这个SWO输出调试信息。论坛送的STM32F303RE上自带的stlink正好有这个SWO口,而且也接到了MCU上,所以正好可以使用,好像有的ST的板子也带了这个接口,但是其中桥接电阻并没有贴到板子上,如果要使用的话,就要自己连接起来(比如STM32F429DISCO好像就没有接上)。

SWO

SWO


对于stlink的驱动好像也有一些要求,我使用keil4带的有点旧的stlink驱动就会提示驱动不支持,后来使用keil5带的stlink驱动据可以了。

SWD

SWD

如果硬件和软件都没有问题了,还需要设置下kei:
首先打开Micro LIB

MICROLIB

MICROLIB

然后打开keil的Trace功能,具体设置如下:
Trace.jpg
然后就是一些重定向printf的函数了,如果之前将printf重定向了串口,那么要修改并添加如下代码:
  1. #define ITM_Port8(n)    (*((volatile unsigned char *)(0xE0000000+4*n)))
  2. #define ITM_Port16(n)   (*((volatile unsigned short*)(0xE0000000+4*n)))
  3. #define ITM_Port32(n)   (*((volatile unsigned long *)(0xE0000000+4*n)))

  4. #define DEMCR           (*((volatile unsigned long *)(0xE000EDFC)))
  5. #define TRCENA          0x01000000

  6. struct __FILE { int handle; /* Add whatever needed */ };
  7. FILE __stdout;
  8. FILE __stdin;

  9. int fputc(int ch, FILE *f) {
  10.   if (DEMCR & TRCENA) {
  11.     while (ITM_Port32(0) == 0);
  12.     ITM_Port8(0) = ch;
  13.   }
  14.   return(ch);
  15. }
复制代码

打开调试即可得到调试信息:
swd0.jpg
输出调试信息
SWO.jpg
测试代码:
F303RE_SWO.rar (394.54 KB, 下载次数: 594)

评分

参与人数 2ST金币 +40 收起 理由
wofei1314 + 20 很给力!
zero99 + 20

查看全部评分

回复

使用道具 举报

该用户从未签到

7

主题

919

帖子

0

蝴蝶豆

金牌会员

最后登录
2020-7-4
发表于 2015-6-16 13:58:23 | 显示全部楼层
楼主的教程不错,收藏了。。

不过ST-LINK V2-1的串口,我开始也是安装不上,后来在网上看到一篇文章描述了类似的问题,抱着试一试的态度,我照着教程的方法试了之后就把虚拟串口的驱动安装上了。希望对你有用。

帖子地址:
                http://blog.sina.com.cn/s/blog_68f348920101ip0m.html


ST-LINK_V2-1 USB driver on Windows XP.zip (5.07 MB, 下载次数: 143)
回复 支持 5 反对 0

使用道具 举报

该用户从未签到

40

主题

1635

帖子

1

蝴蝶豆

论坛元老

最后登录
2018-7-23
发表于 2015-6-15 23:48:33 | 显示全部楼层
学习学习
回复

使用道具 举报

该用户从未签到

76

主题

5791

帖子

4

蝴蝶豆

论坛元老

最后登录
2020-10-15
发表于 2015-6-16 09:23:46 | 显示全部楼层
涨姿势了。。。 blank.png blank1.png blank2.png blank3.png blank4.png blank5.png blank6.png blank7.png blank8.png blank9.png
回复 支持 反对

使用道具 举报

该用户从未签到

47

主题

3456

帖子

30

蝴蝶豆

版主

最后登录
2022-12-25
发表于 2015-6-16 10:51:25 | 显示全部楼层
多谢分享,很有用
回复 支持 反对

使用道具 举报

该用户从未签到

9

主题

242

帖子

0

蝴蝶豆

金牌会员

最后登录
2018-3-23
发表于 2015-6-16 11:22:37 | 显示全部楼层
學習了,謝謝分享
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

163

帖子

0

蝴蝶豆

中级会员

最后登录
2015-6-19
发表于 2015-6-16 11:55:28 | 显示全部楼层
stm32.jpg
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

163

帖子

0

蝴蝶豆

中级会员

最后登录
2015-6-19
发表于 2015-6-16 12:18:59 | 显示全部楼层

路过帮顶
回复

使用道具 举报

该用户从未签到

60

主题

2111

帖子

31

蝴蝶豆

版主

最后登录
2023-6-21
 楼主| 发表于 2015-6-16 12:43:53 | 显示全部楼层

感谢,感谢,关键是赚点金币。
回复 支持 反对

使用道具 举报

该用户从未签到

9

主题

339

帖子

3

蝴蝶豆

金牌会员

最后登录
2021-4-7
发表于 2015-6-16 12:44:34 | 显示全部楼层
厉害,学习一下
回复 支持 反对

使用道具 举报

该用户从未签到

33

主题

1276

帖子

0

蝴蝶豆

论坛元老

最后登录
2020-12-19
发表于 2015-6-16 12:57:48 | 显示全部楼层
高大上,学习了,先收藏
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-4-29 14:21 , Processed in 1.207478 second(s), 49 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

快速回复 返回顶部 返回列表