STM32 基于keil5的printf打印设置

2023-10-29

1、因为使用串口来打印,所以将fputc函数和fgetc函数放在usart.c源文件中;

2、在usart.c源文件中添加stdio.h头文件;

3、打印信息常用于调试,不建议使用中断;

4、在usart.c源文件中添加如下代码

int fputc(int ch, FILE *f){
    HAL_UART_Transmit(&huart1,(uint8_t*)&ch, 1, 10);
    return ch;
}

int fgetc(FILE *f){
    uint8_t ch = 0;
    HAL_UART_Receive(&huart1,&ch, 1, 10);
    return (int)ch;
}

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

STM32 基于keil5的printf打印设置 的相关文章

  • 控制流分析之循环

    最近做科研碰到了如何识别程序热对象的问题 解决这个问题的一般思路是做静态分析 主要是分支概率和基本块频率的分析 目前 LLVM 里已经添加了这两种分析 然而 直接看相关的代码效率很低 主要原因是缺乏控制流分析方面的基础 导致代码中出现的许多
  • SuperSocket框架介绍和示例

    SuperSocket框架适用于各种需要网络通信的应用场景 如游戏服务器 聊天系统 实时数据推送 物联网设备通信等 它可以帮助开发人员快速搭建出稳定 高效 安全的网络通信平台 SuperSocket框架是一款基于 NET平台的高性能 可扩展

随机推荐

  • java为什么要配置环境变量以及如何配置环境变量

    1 为什么要配置环境变量 1 首先解释一下什么是环境 环境就是你当前的操作系统 在这个操作系统中会有一些应用软件例如 goolg浏览器 qq 爱奇艺等等 这些软件都是依赖于当前的操作系统的 2 变量就是可以随意给其赋值的一个存储单元 而环境
  • JSP页面编码

    jsp中pageEncoding和Content Type中的charset pageEncoding 和jsp页面的显示没有关系 默认是iso8859 指本jsp页面的编码方式 如果jsp编辑时使用中文 则保存jsp时应使用utf 8 否
  • 字符识别模型训练与验证

    构建验证集 在机器学习与深度学习模型的训练过程中 模型非常容易出现过拟合的现象 构建验证集能够有效解决过拟合问题 验证集需要尽可能与测试集保持一致 在训练过程中不断验证模型在验证集上的精度 以此控制模型训练 验证集构建方法 1 留出法 Ho
  • 区块链开发之Solidity编程基础(四)合约事件

    事件 事件 智能合约返回值给用户接口 异步的带数据的触发器 一种比较便宜的存储 事件里的Indexed参数 事件 事件是以太坊虚拟机 EVM 日志基础设施提供的一个便利接口 用于获取当前发生的事件 事件和日志有三个用途 智能合约返回值给用户
  • Vision Transformers for Dense Prediction 论文阅读

    研一小菜鸡一枚 刚刚入门CV领域 最近对大火的Transformer 比较感兴趣 把刚刚阅读过的一篇论文和大家分享一下 第一次写文章 如有错误 还请指正 先放一下论文链接 https arxiv org pdf 2103 13413v1 p
  • 客户端读写HBase数据库的运行原理

    1 HBase的特点 HBase是一个数据库 与RDMS相比 有以下特点 它不支持SQL 不支持事务 没有表关系 不支持JOIN 有列族 列族下可以有上百个列 单元格 即列值 可以存储多个版本的值 每个版本都有对应时间戳 行键按照字典序升序
  • python 超时处理方法介绍,Eventlet 和 func-timeout

    前言 python 超时处理方法介绍 Eventlet 和 func timeout 有一些场景 需要我们控制程序或者脚本的运行时间 自动化用例中的某一个步骤需要在规定时间内完成才算有效 使用线程池控制线程运行时 我们不希望每个线程运行时间
  • endnote初始化数据库支持_科研中ENDNOTE的使用

    2020 0804更 看到还是不少人收藏 有观众就有动力有内容哈 再更新下 增加点细节 希望能达到最终的目标是通过这篇文章能让大家在理解的基础上上手Endnote 最近博士毕业了 慢慢总结下近年来用过的生 奇 产 技 工 淫 具 巧 其中用
  • Latent dirichlet allocation note

    2 Latent Dirichlet Allocation Introduction LDA是给文本建模的一种方法 它属于生成模型 生成模型是指该模型可以随机生成可观测的数据 LDA可以随机生成一篇由N个主题组成文章 通过对文本的建模 我们
  • 关于win10系统提示无法连接网上邻居的解决方法(提示信息:0x80070035错误)

    错误提示 错误代码 0x80070035 找不到网络路径 这个错误提示实际上是Windows专业版本地策略设置的问题导致的 比较简单 解决办法 通过修改组策略的 按window R键输入gpedit msc 来启动本地组策略编辑器 步骤如下
  • mybatis之解析statement标签过程分析

    写在前面 在这篇文章中分析了解析mapper xml的
  • Altium Designer 消除Net has no driving source警告的方法

    在进行原理图编译的时候提示警告 Net has no driving source 如下图 解决方法 点击Place Directives No ERC 不进行电气规则检查 在有警告的相应引脚处放置一个No ERC即可 然后从新编译就没有警
  • 第三方支付由直连模式进入网联模式

    不知不觉 中国已成为使用手机支付最多的国家 手机支付的两大的厂商 支付宝和微信支付 已经走进了千家万户 现在出门基本上手机能解决的基本上不用现金 人们已经习惯了不带现金的日子了 支付宝 在去年 支付宝与微信先后发布了提现需要收取0 1 的手
  • 研究阶段性总结

    写这一篇只是对自己之前做的东西做个简短的总结以及为接下来的发展做个规划 自己目前的研究领域为基于深度学习的自然语言处理 研一上学期主要是学习了自然语言处理的基础以及python语言 包括分词 词性标注 构建词典 基本算法原理python实现
  • unity3d 给模型添加刚体后、或者角色控制器后下坠

    1 给模型添加一个刚体后 还要给模型添加一个碰撞器 人和地面的话 要注意地面有没有碰撞器 有的话注意地面碰撞器的Mesh网格是不是Null 还有
  • javaScript和jQuery自动加载方法

    一 JavaScript自动加载 在文本中用onload 当页面中所有内容 包括图片 加载完后再执行onload 如下 在脚本中用window onload 当页面中的所有内容 包括图片 加载完后再执行window onload 如下 wi
  • frp服务器内网穿透设置

    内网穿透的作用 内网穿透是指在一个局域网内 也称内网 中 通过某种技术手段 将局域网内部的网络资源 如ssh服务 Web服务 数据库等 暴露到公网中 从而实现公网用户对内网资源的访问和控制 它可以使得外部用户能够访问局域网内部的设备和服务
  • ubuntu20.04安装Android Studio踩坑

    1 卸载搜狗输入法 截止现在 2020年10月7日 当搜狗输入法处于活动状态时 所有jetbrains全家桶都不能用 换用百度输入法解决问题 2 Failed to install the following Android SDK pac
  • C++之内联函数

    C 之内联函数 为什么要有内联函数 我们编写了一个小函数 它的功能是比较两个string形参的长度并返回长度较小的string的引用 挑出两个string 对象中较短的那个 返回其引用 const string shorterString
  • STM32 基于keil5的printf打印设置

    1 因为使用串口来打印 所以将fputc函数和fgetc函数放在usart c源文件中 2 在usart c源文件中添加stdio h头文件 3 打印信息常用于调试 不建议使用中断 4 在usart c源文件中添加如下代码 int fput