OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 2633|回复: 3

请教关于STM32的STLINK进行SWD的printf输出设置

[复制链接]

8

主题

32

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2019-12-16
在线时间
42 小时
发表于 2020-2-4 11:51:45 | 显示全部楼层 |阅读模式
我的环境:keil_v5
stm32f103c8t6

想用ITM调试,穷尽网上的各种方法,还是不能在DEBUG VIEWER中显示出来,我不知道是不是STLINK的原因,大家有没有遇过,
stlinkv2的SWIM接开发板的13口TDO,KEIL中也做了设置
#include <stdio.h>

#define ITM_Port8(n)    (*((volatile unsigned char *)(0xE0000000+4*n)))
#define ITM_Port16(n)   (*((volatile unsigned short*)(0xE0000000+4*n)))
#define ITM_Port32(n)   (*((volatile unsigned long *)(0xE0000000+4*n)))
#define DEMCR           (*((volatile unsigned long *)(0xE000EDFC)))
#define TRCENA          0x01000000

struct __FILE { int handle; /* Add whatever you need here */ };
    FILE __stdout;
    FILE __stdin;

int fputc(int ch, FILE *f)
{
    if (DEMCR & TRCENA)
    {
        while (ITM_Port32(0) == 0);
        ITM_Port8(0) = ch;
    }
    return(ch);
}


微信图片_20200204114601.jpg
4a62014ed2e24a941f69743e87827dc.jpg
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

8

主题

32

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2019-12-16
在线时间
42 小时
 楼主| 发表于 2020-2-4 11:57:27 | 显示全部楼层
回复 支持 反对

使用道具 举报

8

主题

32

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
243
金钱
243
注册时间
2019-12-16
在线时间
42 小时
 楼主| 发表于 2020-2-5 15:29:55 | 显示全部楼层
我知道了,是SWIM不是ITM用的,这种stlink没有ITM功能
回复 支持 反对

使用道具 举报

1

主题

3

帖子

0

精华

新手入门

积分
12
金钱
12
注册时间
2020-3-13
在线时间
4 小时
发表于 2020-4-13 22:36:32 | 显示全部楼层
wjl13580445117 发表于 2020-2-5 15:29
我知道了,是SWIM不是ITM用的,这种stlink没有ITM功能

你好,最后你是如何解决这个问题的,我现在也遇到这个问题不知道如何解决
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-25 06:02

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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