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

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

3天内不再提示

IAR环境下基于SemiHost机制实现printf功能

茶话MCU 来源:ST MCU 信息交流 2020-08-10 16:26 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

我们在MCU的开发调试过程中,有时希望将一些信息输出以便观察。通常我们可以将标准C库中Printf相关实现函数进行重定向,通过UART串口输出,或者利用ITM机制通过SWO输出。这里将简单演示IAR环境下基于SemiHost机制实现printf功能。

下面使用的开发板STM32F4DISCOVERY板,硬件调试器为STLINK。稍作配置后即可使用。注意在代码里将stdio.h包含进去。

演示代码:

在调试状态下,点击view菜单下面的Terminal I/O子菜单即可出现输出窗口。

配置过程很简单,实现起来也挺方便的,需要的时候我们可以加以灵活选用。

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

    关注

    22

    文章

    1319

    浏览量

    106965
  • 调试器
    +关注

    关注

    1

    文章

    329

    浏览量

    25203
  • stlink
    +关注

    关注

    0

    文章

    20

    浏览量

    9454

原文标题:基于半主机机制实现prinf示例

文章出处:【微信号:stmcu832,微信公众号:茶话MCU】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    长期高温环境,贴片电感如何保证使用寿命

    、电路异常甚至烧毁,核心原因就是电感在高温的可靠性设计不足。想要让电感在高温环境长期稳定工作,需要从材料、结构、选型、应用设计多方面综合保障。 一、高温对贴片电感的核心损伤机制  
    的头像 发表于 04-20 10:55 148次阅读
    长期高温<b class='flag-5'>环境</b><b class='flag-5'>下</b>,贴片电感如何保证使用寿命

    飞凌嵌入式ElfBoard-环境变量之删除清空环境变量environ

    变量,最后再尝试获取一PATH的值来验证清空的情况;很多程序依赖于环境变量(例如 PATH、HOME),清空环境变量可能会导致某些功能失效。而且将 environ 赋值为 NULL
    发表于 03-26 10:23

    瑞萨RL78/F22 MCU基于IAR开发环境创建触摸应用样例工程

    驱动程序 –使用QE for Capacitive Touch开发触摸应用 –添加应用代码实现LED闪烁 1 概述 本文包含以下主要内容: 瑞萨RL78/F22 Target Board简介 基于IAR
    的头像 发表于 01-19 09:33 6765次阅读
    瑞萨RL78/F22 MCU基于<b class='flag-5'>IAR</b>开发<b class='flag-5'>环境</b>创建触摸应用样例工程

    瑞萨RL78/F25 MCU基于IAR开发环境创建触摸应用样例工程

    瑞萨RL78/F25 MCU基于IAR开发环境创建触摸应用样例工程
    的头像 发表于 01-05 14:59 8995次阅读
    瑞萨RL78/F25 MCU基于<b class='flag-5'>IAR</b>开发<b class='flag-5'>环境</b>创建触摸应用样例工程

    请问休眠模式的定时唤醒机制如何实现

    休眠模式的定时唤醒机制如何实现
    发表于 12-24 07:58

    基于IAP功能实现远程升级,如何设计Flash双Bank热切换的回滚机制

    基于IAP功能实现远程升级时,如何设计Flash双Bank热切换的回滚机制
    发表于 11-21 07:26

    C语言的printf基本用法介绍

    中使用频率最高的一个函数一点也不为过,每个C语言程序员都应该掌握 printf 的用法,这是最基本的技能。 不过 printf 的用法比较灵活,也比较复杂,初学者知识储备不足,不能一子掌握,目前
    发表于 11-12 07:04

    如何利用Trace机制实现LLCP预览功能

    在蓝牙协议栈开发过程中,有时需要预先知道 LLCP。本文将介绍如何利用 Trace 机制实现 LLCP 预览功能
    的头像 发表于 10-09 17:55 2075次阅读

    教程来啦!LuatOS中的消息通信机制详解及其应用场景

    在资源受限的嵌入式环境中,LuatOS采用消息机制实现模块间解耦与高效通信。通过预定义消息名称(如“new_msg”),开发者可轻松构建响应式程序结构。接下来我们将深入剖析其实现原理与
    的头像 发表于 09-26 18:59 550次阅读
    教程来啦!LuatOS中的消息通信<b class='flag-5'>机制</b>详解及其应用场景

    如何在 IAR Embedded Workbench for ARM 开发环境中启用可配置数据闪存并设置大小?

    如何在 IAR Embedded Workbench for ARM 开发环境中启用可配置数据闪存并设置大小?
    发表于 08-26 07:49

    在 Keil / IAR 开发环境的 Debug 模式,用户是否可以在空闲 ru 期间立即添加新的断点?

    在 Keil / IAR 开发环境的 Debug 模式,用户是否可以在空闲 ru 期间立即添加新的断点
    发表于 08-21 07:56

    请问如何在 IAR Embedded Workbench for ARM 开发环境中启用可配置数据闪存并设置大小?

    如何在 IAR Embedded Workbench for ARM 开发环境中启用可配置数据闪存并设置大小?
    发表于 08-20 06:23

    如何在多显卡环境配置OLLAMA实现GPU负载均衡

    本文将带你深入了解如何在多显卡环境配置OLLAMA,实现GPU负载均衡,并分享生产环境中的最佳实践。无论你是刚接触GPU集群还是寻求性能优化的老手,这篇文章都能给你带来实用价值。
    的头像 发表于 07-24 14:12 4916次阅读

    瑞萨RA单片机在e2 studio环境printf编译出错的问题解析

    最近看到有一些网友在讨论关于:瑞萨RA单片机在e2 studio环境printf编译出错的问题。
    的头像 发表于 05-24 15:51 1736次阅读
    瑞萨RA单片机在e2 studio<b class='flag-5'>环境</b><b class='flag-5'>下</b><b class='flag-5'>printf</b>编译出错的问题解析

    从Keil MDK到IAR EWARM:通过工程迁移实现项目资产的更好管理

    对于需要统一开发环境或涉及多核架构(如Cortex-A/R)的项目,越来越多的用户选择从Keil MDK迁移到IAR EWARM。这就会面临着需要将之前的Keil MDK工程迁移到IAR EWARM的问题。本文将介绍如何高效完成
    的头像 发表于 05-08 09:03 1473次阅读
    从Keil MDK到<b class='flag-5'>IAR</b> EWARM:通过工程迁移<b class='flag-5'>实现</b>项目资产的更好管理