打印
[技术问答]

如何將printf函數使用在UART1?

[复制链接]
2923|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
各位大大好,我的印象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 | 只看该作者
其实我也想知道怎么改

使用特权

评论回复
5
yangxiaor520| | 2021-7-6 18:18 | 只看该作者
重定向printf标准函数

使用特权

评论回复
6
yklstudent| | 2021-7-7 10:10 | 只看该作者
要看你什么开发环境和编译器了

使用特权

评论回复
7
yangjiaxu| | 2021-7-7 10:20 | 只看该作者
看一下串口 重定向函数那块 就知道怎么修改啦

使用特权

评论回复
8
呐咯密密| | 2021-7-7 14:23 | 只看该作者
新塘的MCU大多都是在retarget.c中修改宏定义即可,非常方便,但是还是要初始化UART1

使用特权

评论回复
9
ayb_ice| | 2021-7-7 16:03 | 只看该作者
修改putc函数

使用特权

评论回复
10
天意无罪| | 2021-7-8 12:37 | 只看该作者
将C语言标准库Printf函数重定向到你的串口打印函数就可以了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

528

主题

1720

帖子

0

粉丝