您的位置 首页 嵌入式

STM32单片机编程printf()函数重定向

在stm32单片机编程中,可以重定向printf()函数来输出调试信息。编写fputc()函数其实printf()函数在头文件中被定义成了一个宏,会调用

在stm32单片机编程中,能够重定向printf()函数来输出调试信息。

  1. 编写fputc()函数
  2. 其实printf()函数在头文件中被界说成了一个宏,会调用到fputc()函数,但在stm32单片机编程中不能够直接调用规范库的fputc()函数进行输出信息,需求自己编写fputc()函数供printf()函数来调用。编译器进行编译时首要会调用自己编写的fputc()函数,而不是库函数。

intfputc(int ch,FILE*f)

{

USART_SendData(USART1, (uint16_t)ch); //经过串口输出

while(USART_GetFlagStatus(USART1, USART_FLAG_TC) !=SET);//等候输出结束

return ch;

}

此刻假定串口1即USART1能够正常通讯,fputc()函数的效果便是把printf()函数重定向到串口1上输出信息。

  1. 装备
  2. 自己着手写好fputc()后,要在文件中包括stdio.h文件。#include在MDK软件界面单击Target options…按钮,在Code Genetation一栏中挑选 Use MicroLIB选项,即完成了装备,此刻printf()函数必定重定向到了串口1即USART1上,能够正常运用printf()函数。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/qianrushi/258278.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部