https://blog.youkuaiyun.com/zhengyangliu123/article/details/50876993/
在嵌入式系统中,通过串口打印log是非常重要的调试手段,但是直接调用底层驱动打印信息非常不方便,在c语言中一般使用printf打印基本的显示信息,而默认printf的结果不会通过串口发送,所以需要对printf的输出进行重定向。
有时候需要同时从多个串口输出信息,如果仍然想通过printf函数输出信息,就需要自己写printf的实现。
一. 初始化端口和配置
对串口用到的GPIO进行配置,并对串口的参数进行初始化。


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

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

被折叠的 条评论
为什么被折叠?



