这两种printf()函数重定向方法,太实用了
💡
原文中文,约2400字,阅读约需6分钟。
📝
内容提要
本文介绍了在STM32项目中植入printf()函数的两种策略。第一种策略是使用MicroLIB库,需要重定向fputc()函数。第二种策略是使用半主机模式,取消ARM的半主机工作模式。在不使用MicroLIB的前提下,仍能使用printf()函数将调试信息打印到USART1上。
🎯
关键要点
-
本文介绍了在STM32项目中植入printf()函数的两种策略。
-
策略1:采用MicroLIB库,需要重定向fputc()函数。
-
MicroLib是缺省c库的备选库,适用于嵌入式应用程序。
-
MicroLib不符合ISO C库标准,功能较少,且代码高度优化。
-
重定向fputc()函数以将调试信息打印到USART1。
-
策略2:不使用MicroLIB库,采用半主机模式。
-
半主机模式允许ARM应用程序通过主机的显示器和键盘进行输入/输出。
-
需要取消ARM的半主机工作模式以避免链接MicroLib的相关函数。
-
提供了实现代码以在不使用MicroLib的情况下使用printf()函数。
🏷️
标签
➡️