如何关闭 printf 输出到串口?

发布于 2022-04-16 00: 34: 38

调试完成后, 需要关闭所有输出到串口 0 的信息, 也就是关闭 printf, 在那个地方设置?

查看更多

关注者
0
被浏览
2. 7k
ZYQ
ZYQ 2022-04-16
我已不再支持 W80X 任何相关问题的回复, 请大家不要私信, 有问题找 isme 谢谢

你这个问题感觉问的不明白啊, 你自己写代码的时候, printf 前后用 自己定义的宏控制一下不就好了, 例如这样

#ifdef  DEBUG_PRINT
    printf ("demo test \r\n") ; 
#endif

或者找到 libc_port. c 找到里面的 fputc 函数, 把里面的发送字符函数屏蔽了这都是可以的

int fputc (int ch,  FILE *stream) 
{
     (void) stream; 
#if USE_UART0_PRINT
    sendchar (ch) ; 
#else
    sendchar1 (ch) ; 
#endif

    return 0; 
}
5 个回答
Mrzhao
Mrzhao 认证专家 2022-04-16
一个嵌入式爱好者. CSDN 主页: https: //blog. csdn. net/qq_37280428? spm=1011. 2415. 3001. 5343

我很好奇 你为啥要屏蔽 printf? ? /

大信
大信 认证专家 2022-04-17
硬件开发, 软件开发, 系统开发, 工程架构, 方案设计

还有一个方法, 就是在 init 初始化中, 关闭串口 0

qq3147106
qq3147106 2022-04-23
一名电子爱好者, 博客: www. dzahz. cn

如果你是不需要使用串口的话, 最简单的办法就是关闭串口

chy
chy 2022-05-03
这家伙很懒, 什么也没写!

是不是不想资源被占用? 占用串口, 程序空间以及执行时间. 真正运行的时候是不需要 printf 函数输出这些调试信息的, 只有调试的时候有用, 自己写的代码可以通过宏定义屏蔽, 固件库里如果有就不知道怎么处理了

撰写答案

请登录后再发布答案, 点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览