有一些朋友问到有没有开源的printf直接可以拿来用的,不想再重复造轮子了,一些老维护项目软件架构也不能随便换,只是想加入这个组件方便以后排查问题,那当然是有的,毕竟开源界的道友们还是非常无私的。

那么接下来就给大家推荐三个轮子,后续自己根据实际项目需求进行修一修基本就能用了~


1、xprintf


xprintf 是一个紧凑的字符串 I/O 库。 它非常适用于程序存储器不足以用于常规 printf 函数的微型微控制器。 

推荐的用途是:将格式化的字符串写入 LCD 或 UART 以及用于调试/维护控制台。

可以使用配置选项配置 xprintf 以减小模块大小。

下表显示了 Cortex-M3 (gcc -Os) 中代码大小的示例。 long long 和 float 需要 C99 或更高版本。



源码和使用说明都在如下路径:

http://elm-chan.org/fsw/strf/xprintf_j.html



2、lwprintf




lwprintf-Lightweight printf library optimized for embedded systems,lwprintf是针对嵌入式系统优化的轻量级 stdio 管理器。 

用 C 语言 (C11) 编写,实现了与 printfvprintfsnprintfsprintf 和 vsnprintf 兼容的输出函数,只需要几 kB 的非易失性存储器,较低的内存占用,适用于嵌入式系统.

并且对所有 API 函数的可重入访问,能够在多个线程打印到同一输出流可选支持,还允许多个输出流函数(与仅支持一个输出流函数的标准不同)来分离应用程序的各个

部分。

所以整体lwprinf功能的选择会更加的丰富,而且这个项目文档案例也比较丰富,根据自己的情况进行功能的选择,挺香的。

开源地址如下:

https://github.com/MaJerle/lwprintf

开源硬件平台

还没有评论,抢个沙发!