打印

如何实现printf函数

[复制链接]
5697|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
ousj|  楼主 | 2021-6-1 23:46 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
picc下如何实现printf函数,包括sendch和getch还有UART的init(),最好有源代码

使用特权

评论回复
沙发
ousj|  楼主 | 2021-6-1 23:48 | 只看该作者
没有告知具体步骤也可以

使用特权

评论回复
板凳
wenfen| | 2021-6-1 23:50 | 只看该作者
不了解!

使用特权

评论回复
地板
liuzaiy| | 2021-6-1 23:52 | 只看该作者
好像得调用stdio.h并将串口重定向

使用特权

评论回复
5
tian111| | 2021-6-1 23:54 | 只看该作者

void putch(unsigned char byte)
{
        while(!TXIF)                                                                                       
                continue;
        TXREG = byte;
}

unsigned char getch(void)
{
        while(!RCIF)                                                                                       
                continue;
        return RCREG;
}

unsigned char getche(void)
{
        unsigned char c;
        putch(c = getch());
        return c;
}

我是18F4550,里面如果有跟你寄存器名称不一样的自己查找改一下

使用特权

评论回复
6
renyaq| | 2021-6-1 23:56 | 只看该作者
请问这个串口重定向应该添加在哪个文件下呢?

使用特权

评论回复
7
dengdc| | 2021-6-1 23:58 | 只看该作者
一般重定义这几个函数就可以了

使用特权

评论回复
8
chenjun89| | 2021-6-2 07:22 | 只看该作者
将C语言的printf函数重定义就可以了。

使用特权

评论回复
9
CoolSilicon| | 2021-6-2 11:08 | 只看该作者
既然你已经知道printf函数了, 你可以再看一下编译器手册, 里面有关于printf的说明的, 需要你自行重定义putch就可以了..

使用特权

评论回复
10
Candic12e| | 2021-6-2 11:19 | 只看该作者
如果可以 用MPLAB可以自动生成的,看到一篇帖子写的很好,分享给你https://bbs.21ic.com/icview-3136270-1-1.html,上面有说用printf

使用特权

评论回复
11
ousj|  楼主 | 2021-6-2 21:24 | 只看该作者
其实还是不大明白,我再琢磨琢磨吧,多谢了哈先

使用特权

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

本版积分规则

712

主题

7557

帖子

1

粉丝