其实这个就是说:
一些单片机的开发编译器自带一些库函数中写有printf的函数,只是需要添加相应的头文件,他的这个printf函数是遵循这个单片机的协议的。并不是统一遵循c语言中printf的协议的。
尽管单片机内部写好了printf的函数,但是一些关于串口的设置还得我们来,比如说51中,你至少需要开启串口吧!!另外波特率神马的你也需要写吧!!其他的一些都是小事,上一个示例程序:
void usrt_init()
{
TMOD=0x20;//即0010 0000,定时器/计数器1,工作方式2
TH1=0xfd; //设置波特率为9600
TL1=0xfd;
TR1=1;//启动定时器/计数器1
SCON=0x50;//0101 0000.串口工作方式1,允许串行控制
PCON=0x00;//设置SMOD=0
IE=0x90;//CPU允许中断,串行允许中断
TI=1;//直接使用printf必须加入此句才能实现发送
}
这样子设置了以后就可以直接调用printf了,
stm32中也是如此。