STM32 USART 输入输出C库函数重定向理解

来源:互联网 发布:控制上网行为的软件 编辑:程序博客网 时间:2024/05/16 11:39

       重定向:是指用户可以自己重写c的库函数,当连接器检查到用户编写了与C库函数相同名字的函数时,优先采用用户编写的函数,这样用户就可以实现对库的修改了。

为了实现重定向printf()函数,我们需要重写fputc()这个c标准库函数,因为printf()在c标准库函数中实质是一个宏,最终调用了fputc()这个函数。

     例如 用户有一个I/O设备,如USART。本来库函数 fputc()是把字符输出到调试器控制窗口上去,但用户要把数据通过USART输出到串口助手上去,这样一来,用到的基于fputc()函数的printf()系列函数的输出都需要被重定向到USART端口上去。

      所以要想使用USART功能,用户必须自己重定向fputc()函数。



0 0