0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32CubeIDE SWV功能介绍

STM32单片机 来源:STM32单片机 作者: STM32单片机 2021-10-13 14:20 次阅读

01

引言

STM32CubeIDE是ST官方推出的集成开发环境,集成了很多STM32的调试与开发工具。本文主要介绍如何使用SWV功能来打印输出。

02

问题描述

客户使用STM32CubeIDE开发环境,将Printf定位到串口上是正常的,但是在重定位到SWO上却出现了无法打印的问题。客户也参考了网上的教程,仍然无法实现,不知道是什么原因。

STM32CubeIDE 版本:V1.6.1

硬件环境:Nucleo-G431RB

03

问题分析与定位

首先,我们需要查找资料,在《UM2609 STM32CubeIDE user guide》的第4章中,对SWV有比较详细的介绍。此处推荐先查看官网文档,这个文档本身是非常权威的。可能你在网上也会找到关于SWV功能的介绍,但是这个文档还是必须要看的,因为这个是源头。

通过查看这个文档,知道了实现SWV的简单步骤如下:

第一步:在Pinout & Configuration选项中打开SWO的功能,此步骤是必须的。

第二步:重定位printf的接口函数。

这里有个简单的方法,直接在syscalls.c文件中,改写_write()函数的内容,代码如下所示。再在此文件中包含ITM_SendChar 实现的头文件core_cmX.h,此文件一般都是已经被包含在你所选择的器件型号的头文件中。

此处我们选择的是stm32g431xx.h,直接放在此文件的开始处即可。

78cc469c-1566-11ec-8fb8-12bb97331649.png

第三步:在main.c文件中包含stdio.h这个头文件,并尝试打印printf,此处注意,打印不能很频繁,所以需要增加延时。

78ee44fe-1566-11ec-8fb8-12bb97331649.png

全局编译一下,查看是否有错误,如果有错误,请对应提示信息修改。编译没有错误之后,我们就可以进行下一步了。

78fe975a-1566-11ec-8fb8-12bb97331649.png

编译成功正确界面

第四步:配置仿真调试参数。打开SWV的调试功能。此处注意:Core Clock必须与你配置的时钟是一致的。此处我配置是170MHz,与我的系统时钟一致。

79169daa-1566-11ec-8fb8-12bb97331649.png

仿真调试配置界面

第五步:开始进入调试界面,并在调试界面中打开Windows--》Show;View--》SWV的ITM data Console窗口。注意,整个SWV其实是共用一个配置文件的,所以,当你打开SWV内的任意一个窗口都可以进行SWV 的配置。在这里我们只是为了查看Printf的内容,所以就选择了SWV ITM Data Console窗口。关于这里边其他几个部分的详细说明参考UM2609的4.3章节的内容。

此窗口打开后,需要新增一个Port端口。默认TIM中使用的就是0端口,所以我们直接选0即可。

选择点击配置按钮对参数进行配置。配置情况如下:

794ef0c4-1566-11ec-8fb8-12bb97331649.png

SWV窗口配置界面

推荐先复位一下工程(可选项),然后“启动跟踪/start trace”。注意:此处是先启动跟踪,之后再让程序运行起来,不能反序。

启动跟踪和开始运行

此时即可看到打印出来的内容了。

79896858-1566-11ec-8fb8-12bb97331649.png

最后打印输出的状态

04

小结

其实很多的内容都已经在手册中有详细的描述,但是因为英文或者是时间的问题,我们大部分人没有时间和精力阅读完所有的文档的。所以在遇到问题时候,会阻塞你比较长时间。希望本文在你遇到困难的时候能够给你一点启示,帮你快速解决手中的问题。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 接口函数
    +关注

    关注

    0

    文章

    10

    浏览量

    8155
  • Printf
    +关注

    关注

    0

    文章

    79

    浏览量

    13478

原文标题:工程师笔记 | STM32CubeIDE SWV功能简介

文章出处:【微信号:STM32_STM8_MCU,微信公众号:STM32单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32CubeIDE找不到elf

    库(STM32Cube),提供了丰富的开发工具和功能,帮助开发者更快、更方便地开发嵌入式应用。 在使用STM32CubeIDE开发STM32应用程序时,有时会遇到找不到elf文件的问题
    的头像 发表于 01-02 16:32 567次阅读

    STM32CubeIDE实用技巧之配置Heap空间

    STM32CubeIDE实用技巧之配置Heap空间
    的头像 发表于 10-31 17:30 714次阅读
    <b class='flag-5'>STM32CubeIDE</b>实用技巧之配置Heap空间

    巧用 STM32CubeIDE 之编译警告

    巧用 STM32CubeIDE 之编译警告
    的头像 发表于 10-25 16:33 552次阅读
    巧用 <b class='flag-5'>STM32CubeIDE</b> 之编译警告

    关于STM32CubeIDE链接脚本的小问题

    电子发烧友网站提供《关于STM32CubeIDE链接脚本的小问题.pdf》资料免费下载
    发表于 09-20 11:25 0次下载
    关于<b class='flag-5'>STM32CubeIDE</b>链接脚本的小问题

    STM32CubeIDE实用技巧之ld链接文件

    电子发烧友网站提供《STM32CubeIDE实用技巧之ld链接文件.pdf》资料免费下载
    发表于 09-20 10:31 1次下载
    <b class='flag-5'>STM32CubeIDE</b>实用技巧之ld链接文件

    STM32CubeIDE实用技巧之仿真带外扩FLASH的工程

    电子发烧友网站提供《STM32CubeIDE实用技巧之仿真带外扩FLASH的工程.pdf》资料免费下载
    发表于 09-19 16:55 2次下载
    <b class='flag-5'>STM32CubeIDE</b>实用技巧之仿真带外扩FLASH的工程

    STM32CubeIDE实用技巧之配置堆空间

    电子发烧友网站提供《STM32CubeIDE实用技巧之配置堆空间.pdf》资料免费下载
    发表于 09-19 15:07 2次下载
    <b class='flag-5'>STM32CubeIDE</b>实用技巧之配置堆空间

    STM32CubeIDE快速入门指南

    电子发烧友网站提供《STM32CubeIDE快速入门指南.pdf》资料免费下载
    发表于 09-19 14:29 6次下载
    <b class='flag-5'>STM32CubeIDE</b>快速入门指南

    STM32CubeIDE安装指南

    STM32CubeIDE 安装指南将介绍如何将软件安装至可支持的各个操作系统上。该安装指南主要面向软件开发人员或即将安装STM32CubeIDE 产品的系统管理员。
    发表于 09-07 06:24

    如何基于STM32CubeIDE中的设备配置创建Vision项目

    摘要STM32CubeIDE是STMicroElectronics为基于STM32的微控制器提供的免费工具链。 本应用笔记介绍了如何基于STM32CubeIDE中的设备配置创建Visi
    发表于 09-01 11:57

    应用笔记 | 建立基于STM32CubeIDE的ClassB工程

    关键字:STM32CubeIDE,ClassB   目录预览 1.前言 2.准备 3.创建CubeMX工程 4.移植过程中可能遇到的问题 5.小结 0 1 前言 大家都知道ST的ClassB功能安全
    的头像 发表于 08-24 18:15 863次阅读
    应用笔记 | 建立基于<b class='flag-5'>STM32CubeIDE</b>的ClassB工程

    STM32CubeIDE中基于STM32L5系列的项目入门

    电子发烧友网站提供《STM32CubeIDE中基于STM32L5系列的项目入门.pdf》资料免费下载
    发表于 08-01 17:27 0次下载
    <b class='flag-5'>STM32CubeIDE</b>中基于<b class='flag-5'>STM32</b>L5系列的项目入门

    STM32CubeIDE安装指南

    电子发烧友网站提供《STM32CubeIDE安装指南.pdf》资料免费下载
    发表于 08-01 15:44 3次下载
    <b class='flag-5'>STM32CubeIDE</b>安装指南

    STM32CubeIDE ST-LINK服务器指南

    电子发烧友网站提供《STM32CubeIDE ST-LINK服务器指南.pdf》资料免费下载
    发表于 08-01 14:57 6次下载
    <b class='flag-5'>STM32CubeIDE</b> ST-LINK服务器指南

    应用笔记|巧用 STM32CubeIDE 之编译警告

    关键字:STM32CubeIDE,warning,编译警告 目录预览 1 前言 2 巧用 warning 3 小结 1. 前言 编译警告对于工程师们来说,是再常见不过的东西了。 对于严谨的工程师
    的头像 发表于 06-29 17:35 767次阅读
    应用笔记|巧用 <b class='flag-5'>STM32CubeIDE</b> 之编译警告