历史上的今天
返回首页

历史上的今天

今天是:2025年06月10日(星期二)

正在发生

2018年06月10日 | STM32F103程序串口调用printf打印数据

2018-06-10 来源:eefocus

程序开发过程中调试必不可少,一种简单直接的调试方式是使用串口发送数据,并使用串口助手进行观测。以前使用MSP430做项目时也同样使用printf打印数据,所以现在想在stm32 上实现。

通常串口发送单字节库函数:USART_SendData(USART1, (uint8_t) ch);对显示小数等数据比较复杂,如果能够直接使用C语言 stdio.h中的printf直接输出就可以省去大部分格式输出转化时间。下面将介绍如何调用printf打印串口数据。

建立USART.C和USART.H两个文件,分别编写串口设置程序与头文件

USART.C中需要添加如下代码:


  1. int fputc(int ch, FILE *f)  

  2. {  

  3.  /* e.g.给USART写一个字符 */  

  4.  USART_SendData(USART1, (uint8_t) ch);  

  5.   

  6.  /* 循环直到发送完成 */  

  7.  while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);  

  8.   

  9.  return ch;  

  10. }  


对printf进行重定向;

USART.H中需要添加如下代码:

添加stdio.h头文件,其次,声明int fputc(int ch, FILE *f);


最后一步,在设置中勾选Use MicroLIB选项;


完成以上步骤后,便可在程序中直接调用printf打印串口数据。


推荐阅读

史海拾趣

宁波晨翔电子(CONNFLY)公司的发展小趣事

随着技术的不断积累和创新,晨翔电子在智能仪表、LED照明、无线网络等领域取得了显著的技术突破。公司不仅成功研发出多款具有竞争力的产品,还积极拓展国内外市场,与多家知名企业建立了长期稳定的合作关系。这一时期的成功,为晨翔电子的后续发展奠定了坚实的基础。

ebm-papst公司的发展小趣事

随着产品种类的不断增加和生产规模的扩大,ebm-papst面临着越来越大的内部物流挑战。为了优化内部物流流程、提高生产效率,公司引入了先进的物流管理系统和自动化设备。这些措施使得公司能够更高效地管理库存、运输和配送等环节,减少了生产成本和时间成本。同时,优化内部物流也提高了产品的质量和可靠性,增强了客户对ebm-papst的信任度。

EDAL公司的发展小趣事

为了进一步巩固市场地位和提升技术实力,EDAL公司开始通过收购和合作的方式拓展业务。公司成功收购了几家在EDA领域具有领先地位的公司,获得了更多的技术专利和市场份额。此外,EDAL公司还与其他科技公司建立了战略合作关系,共同研发新技术、新产品,推动整个EDA行业的发展。

Elite Enterprises (H K) Co Ltd公司的发展小趣事

为了进一步提升公司的竞争力和市场份额,Elite Enterprises积极寻求与行业内外的合作伙伴建立战略合作关系。公司与多家知名企业签订了长期合作协议,共同开发新产品、拓展新市场。此外,公司还与一些高校和研究机构建立了产学研合作关系,共同推动LED技术的创新和应用。

Econais公司的发展小趣事

Econais公司成立于XXXX年,其创始人是一群在无线通信技术领域拥有深厚背景和丰富经验的工程师。他们看到了物联网(IoT)和机器对机器(M2M)通信的巨大潜力,并希望通过自己的技术,为全球的设备提供高效、稳定的无线连接方案。于是,Econais应运而生,专注于研发超低功耗(ULP)和高性能的无线模块。

FORYARD公司的发展小趣事

面对日益激烈的市场竞争和客户需求的变化,FORYARD决定实施智能制造转型。公司投入巨资引进先进的自动化生产线和智能管理系统,实现了从原材料采购、生产加工到成品检验的全流程智能化管理。这一转型不仅大幅提高了生产效率和产品质量,还降低了人力成本和运营成本。同时,FORYARD还积极拥抱工业互联网和大数据等新技术,通过数据分析优化生产流程、预测市场需求,进一步提升了企业的竞争力和市场响应速度。

问答坊 | AI 解惑

电容降压的问题

在电路中电容降压要注意哪些问题?…

查看全部问答>

485总线稳定性解决方法

485总线稳定性解决方法 一、关于485 总线的几个概念: 1、485 总线的通讯距离可以达到1200 米。 根据485 总线结构理论,在理想环境的前提下,485 总线传输距离可以达到1200 米。其条件是通讯线材优质达标,波特率为9600,只负载一台485 设备,才 ...…

查看全部问答>

这个下了怎么打开

机械设计毕业设计-微耕机cad装配图 资源大小: 99.59KB 资源类型: application/octet-stream 发布人: fengyuwuzuzk 发布日期: 2009-05-10 18:10 资源分: 1 下载人数: 35 …

查看全部问答>

如何通过Tornado自带的TCL命令实现对当前工程的编译?

问题:如何通过Tornado自带的TCL命令实现对当前工程的编译,不借助Tornado界面中所提供的编译操作,生成.o和.out文件。 实际上Tornado界面功能好像也是通过TCL命令来实现的,关键本人对TCL命令这块不太熟悉,有请大侠们指教。 …

查看全部问答>

怎样使用PB目录下的例子程序

C:\\WINCE500\\PUBLIC\\SERVERS\\SDK\\SAMPLES 比如说 我该如何建工程来使用它呢? 谢谢!…

查看全部问答>

求天线匹配网络,怎样才能是功率衰减得最少...

本帖最后由 paulhyde 于 2014-9-15 09:20 编辑 求拉杠天线匹配网络,拉杠天线长约一米,直径70mm左右......  …

查看全部问答>

Msp430 LaunchPad 与LCD1602的接口问题

本人是初学者,我最近也得到了msp430 Launchpad 这块板子,请问怎样能实现这块板子与LCD1602的连接啊,我要把AD转换的结果从LCD1602来显示。请高手指点一下。谢谢…

查看全部问答>

【MSP430 编译器使用经验】+CCS6.0

虽然两年之前使用过CCS,但是确确实实之前仅仅是使用。 …

查看全部问答>