完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
TLE9854 的串口能正常输出,现在想配置成printf,使能了STDOUT和STDIN,选择了MicroLIB,可是没法输出,怀疑是程序里这个函数没被调用,这个函数在哪里调用的?
void ttywrch(int ch) { stdout_putchar(ch); } 我把sint32 stdout_putchar(sint32 Char)注释,改为 int fputc(int ch, FILE *f),printf可以用,这是怎么回事,是哪里我没配置吗 { } |
|
相关推荐
1个回答
|
|
|
根据您的描述,可能是以下问题导致printf函数无法正常输出:
1. 没有正确调用printf函数:确保您在代码中正确调用了printf函数来输出内容,例如:printf("Hello Worldn"); 2. printf函数的输出被重定向到了其他地方:在一些特殊的嵌入式系统中,printf函数的输出可能被重定向到串口或者其他设备。确保您的输出设备正确配置,并且printf函数的输出被正确重定向到了预期的地方。您可以查看相关的开发板或芯片文档以了解如何正确配置输出设备。 3. printf函数的流设置不正确:在使用MicroLIB时,确保您正确使用了MicroLIB提供的流设置函数来使能STDOUT和STDIN流,例如:finit(STDIN_FILENO); 和 finit(STDOUT_FILENO);。这样可以确保printf函数使用正确的输入和输出流。 4. 标准库的重定向函数未正确实现:在您的代码中,您注释掉了sint32 stdout_putchar(sint32 Char)函数,改为了int fputc(int ch, FILE *f)函数来实现输出。这种情况下,确保您正确实现了fputc函数,并且正确地将输出重定向到了期望的位置。 请注意,以上仅是一些可能的原因,具体原因可能因为您的具体环境、配置和代码的不同而有所差异。根据您的具体情况,请仔细检查和调试相关配置和代码,以确定问题所在。 |
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
【瑞萨RA6E2】瑞萨E2S软件安装过程,等待过程玩下97_e2 studio_ZGZZ
331 浏览 0 评论
532 浏览 0 评论
【原创】【RA4M2-SENSOR开发板评测】低功耗+USB综合测试
842 浏览 0 评论
1383 浏览 2 评论
824 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
16911 浏览 31 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 07:01 , Processed in 0.768659 second(s), Total 75, Slave 57 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
758