• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

如何在STM32里边添加printf函数?

小白爱32 2018-11-27 浏览量:1212
如题,如何在STM32里边添加printf函数?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 可以参考这个博客https://blog.csdn.net/sudy103810/article/details/78880784?utm_source=blogxgwz3
    • 发布于 2018-11-27
    • 举报
    • 评论 0
    • 1
    • 0

其他答案 数量:16
  • 自己重写,还比较简单,printf 函数里面放 uart_transfer 阻塞发送
    • 发布于2018-11-27
    • 举报
    • 评论 0
    • 1
    • 0

  • 看看这篇文章!http://www.eeworld.com.cn/mcu/2015/1110/article_23537.html
    • 发布于2018-11-27
    • 举报
    • 评论 0
    • 0
    • 0

  • printf函数是通过串口输出的,也可以输出到屏上

    一般都是要进行重载的

    • 发布于2018-11-27
    • 举报
    • 评论 0
    • 0
    • 0

  • 引入 c 库,把 printf 实现了,就能用。

    • 发布于2018-11-28
    • 举报
    • 评论 0
    • 0
    • 0

  • printf函数,包含在头文件stdio.h中

    但是要正常使用它,必须重载一个字节输出函数。下面给段代码:

    #ifdef __GNUC__
      /* With GCC/RAISONANCE small printf (option LD linker->Libraries->Small printf
         set to 'Yes') calls __io_putchar() */
      #define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
    #else
      #define PUTCHAR_PROTOTYPE int fputc(int ch FILE *f)
    #endif /* __GNUC__ */
    /**
      * @brief  Retargets the C library printf function to the USART.
      * @param  None
      * @retval None
      */
    PUTCHAR_PROTOTYPE
    {
      /* Place your implementation of fputc here */
      /* e.g. write a character to the EVAL_COM1 and Loop until the end of transmission */
        LL_USART_ClearFlag_TC(USART2);
        LL_USART_TransmitData8 (USART2ch);
        while(0 == LL_USART_IsActiveFlag_TC(USART2)) {};
        return ch;
    }
    不同的编译环境,字节输出函数名不同,有的叫__io_putchar,有的叫fputc。这里用宏来进行控制。
    这段代码,我让字节通过串口2输出。以后调用printf函数,输出内容都是通过串口2送出的。
    您也可以改为其它串口。如果愿意,您也可以在fputc函数里把它显示在LCD屏上(控制好显示坐标),或者别的输出方式。

    • 发布于2018-11-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 重载实现printf函数,把串口驱动做好。
    • 发布于2018-11-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 正点原子有例程,这个是在STM32程序中重载printf函数实现,好像要添加什么C标准库。
    • 发布于2018-11-28
    • 举报
    • 评论 0
    • 0
    • 0

  • 非常详细的可以去看看那------6步教你在STM32程序中添加 printf函数
    • 发布于2018-11-28
    • 举报
    • 评论 0
    • 0
    • 0

  • stm32直接勾选USE MicroLIB就可以启用printf函数了,前提是你的fputc函数必须要有定义。

    • 发布于2018-11-30
    • 举报
    • 评论 0
    • 0
    • 0

  • 重定义库函数,fputc,可以参考原子程序
    • 发布于2018-11-30
    • 举报
    • 评论 0
    • 0
    • 0

  • STM32官方有一段代码可以实现printf的,参考https://www.cnblogs.com/shangdawei/p/3970489.html
    • 发布于2018-12-14
    • 举报
    • 评论 0
    • 0
    • 0

  • 建议用mircolib的方式来处理,勾选对应的micro库就可以使用
    • 发布于2019-01-08
    • 举报
    • 评论 0
    • 0
    • 0

  • 你可以参考正点原子的串口例程,根据教程使用
    • 发布于2019-01-11
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

如何在STM32里边添加printf函数?