[技术问答] 如何將printf函數使用在UART1?

[复制链接]
3404|9
 楼主| flycamelaaa 发表于 2021-7-6 16:13 | 显示全部楼层 |阅读模式
各位大大好,我的印象printf預設是在UART0,如果我想用在UART1,是要在哪邊更改?

感恩
sjnh 发表于 2021-7-6 16:31 | 显示全部楼层

/* retarget the C library printf function to the USART */
int fputc(int ch, FILE *f)
{
   // 用UART1
    return ch;
}
cr315 发表于 2021-7-6 16:56 | 显示全部楼层
在 retarget.c 文件里有一个定义:
#define DEBUG_PORT   UART0
只要把这个定义改为 UART1就可以了,当然还要配置 UART1
elephant00 发表于 2021-7-6 16:56 | 显示全部楼层
其实我也想知道怎么改
yangxiaor520 发表于 2021-7-6 18:18 来自手机 | 显示全部楼层
重定向printf标准函数
yklstudent 发表于 2021-7-7 10:10 | 显示全部楼层
要看你什么开发环境和编译器了
yangjiaxu 发表于 2021-7-7 10:20 | 显示全部楼层
看一下串口 重定向函数那块 就知道怎么修改啦
呐咯密密 发表于 2021-7-7 14:23 | 显示全部楼层
新塘的MCU大多都是在retarget.c中修改宏定义即可,非常方便,但是还是要初始化UART1
8496360e5484e3aa87.png
ayb_ice 发表于 2021-7-7 16:03 | 显示全部楼层
修改putc函数
天意无罪 发表于 2021-7-8 12:37 | 显示全部楼层
将C语言标准库Printf函数重定向到你的串口打印函数就可以了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

837

主题

4432

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部