微控制器中的"printf"是什么?

LEM*_*ANE 8 c embedded microcontroller firmware 8051

我在微控制器的c语言示例代码中看到了"printf"指令,特别是在8051中.由于微控制器没有固定的输出显示,"printf"指令的用途是什么?

Rap*_*ien 16

更可能的是,您可以通过RS232端口连接调试控制台,或者作为在线仿真器的虚拟输出.


Cli*_*ord 12

printf被定义为输出到stdout而不是"输出显示",stdout可以是任何流设备.通常,在没有显示器的系统上,它将输出到串行接口(UART),以便终端或终端仿真器(例如,超级终端或TeraTerm)可以用作显示设备.

一些开发环境实现了"半托管",其中stdio,stdin和stderr,甚至在某些情况下,开发主机通过调试器接口(JTAG,ICE,SWD等)提供文件系统.

通常,您的编译器库将为您提供挂钩或存根,以便您可以为备用流I/O设备实现驱动程序,例如,您可以实现一个,以便printf将输出到LCD显示器(如果您的设备有一个).这称为"重新定位".


ckv*_*ckv 7

您可以将微控制器连接到PC的串行端口并监控您的数据

的printf

使用超级终端.您也可以将它用于诊断目的