[PIC®/AVR®/dsPIC®产品] 串口重映射的问题

[复制链接]
1262|23
 楼主| kangzj 发表于 2022-8-10 20:26 | 显示全部楼层 |阅读模式
本帖最后由 pzsh 于 2022-8-15 16:40 编辑

PIC24FJ1024GB610这颗片子,在调试的时候,我想用串口6输出Printf打印的内容,在网上找了下,发现大家使用putch()函数重映射一下就能映射到USART6,我发现不用putch函数也能输出打印的内容
supernan 发表于 2022-8-10 20:28 | 显示全部楼层
什么意思?不是很明白你说的什么,能再解释一下这个现象吗
 楼主| kangzj 发表于 2022-8-10 20:39 | 显示全部楼层
只能从串口1输出,而不是从串口6输出。
 楼主| kangzj 发表于 2022-8-10 20:40 | 显示全部楼层
单独用 U6TXREG = Ch;      //将需要发送的数据给TXREG
    while( U6STAbits.TRMT == 0);//等待数据写入 也能从串口6发出数据,但是就是无法从串口6输出printf的内容,有遇到过类似问题的大侠吗?感谢
dengdc 发表于 2022-8-10 20:44 | 显示全部楼层
你需要研究一下单片机的printf做法..
lizye 发表于 2022-8-10 20:46 | 显示全部楼层
印象中好像是下面的调用关系:
printf==>putch==>UxTXREG=ch,
yszong 发表于 2022-8-10 20:48 | 显示全部楼层
必须的用重定向,不然print函数是调用默认的。
zhaoxqi 发表于 2022-8-10 20:52 | 显示全部楼层
编译器不是大罗神仙,能知道你想从哪个端口printf……
yszong 发表于 2022-8-10 20:54 | 显示全部楼层

重定向就是满足你的要求的
 楼主| kangzj 发表于 2022-8-10 20:56 | 显示全部楼层
这个问题好奇怪
yszong 发表于 2022-8-10 20:58 | 显示全部楼层
看看你的代码
renyaq 发表于 2022-8-10 21:02 | 显示全部楼层
printf需要重定向才能在usart6输出
yszong 发表于 2022-8-10 21:04 | 显示全部楼层
说直接点就是要重写put_char 类似这个名字的函数
 楼主| kangzj 发表于 2022-8-10 21:06 | 显示全部楼层
唉,还是没有什么结果,算了,多谢大家啦
jkl21 发表于 2022-8-16 22:10 | 显示全部楼层
printf实现了吗   
quickman 发表于 2022-8-18 17:16 | 显示全部楼层
这个怎么配置呢   
xiaoyaozt 发表于 2022-8-18 18:58 | 显示全部楼层
以前只是以为单片机才有这个需求呢   
tpgf 发表于 2022-9-5 08:18 | 显示全部楼层
应该串口输出就可以
nawu 发表于 2022-9-5 12:35 | 显示全部楼层
需要自己定义从那个口输出
aoyi 发表于 2022-9-5 12:44 | 显示全部楼层
必须得用重定向
您需要登录后才可以回帖 登录 | 注册

本版积分规则

672

主题

7007

帖子

2

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