STM32让printf通过串口打印及自定义printf函数

本文介绍在嵌入式系统中如何通过重定向printf函数实现串口log打印,包括配置端口、实现发送函数、使用MicroLib及自定义多串口printf等步骤。

https://blog.youkuaiyun.com/zhengyangliu123/article/details/50876993/

在嵌入式系统中,通过串口打印log是非常重要的调试手段,但是直接调用底层驱动打印信息非常不方便,在c语言中一般使用printf打印基本的显示信息,而默认printf的结果不会通过串口发送,所以需要对printf的输出进行重定向。

 有时候需要同时从多个串口输出信息,如果仍然想通过printf函数输出信息,就需要自己写printf的实现。

 

一. 初始化端口和配置

       对串口用到的GPIO进行配置,并对串口的参数进行初始化。

STM32让printf通过串口打印及自定义printf函数

STM32让printf通过串口打印及自定义printf函数

二.   宏定义并实现具体的发送函数

       代码在编译时首先判断__GNUC__有无定义,之后将PUTCHAR_PROTOTYPE替换成具体的定义。在keil5中,使用fputc函数,所以其实最后是重写了fputc的实现,在该函数中,调用串口的发送函数,每次发送一个字符。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值