zoukankan      html  css  js  c++  java
  • STM32.printf

    printf(" this is a usart printf demo ");

    Use Micro LIB 需要勾选这个库

    将串口定义成 printf 函数

    #include <stdio.h>
    //重定向C库函数printf到USART1
    int fputc(int ch, FILE *f)
    {
            /* 发送一个字节数据到USART1 */
            USART_SendData(USART1, (uint8_t) ch);
            
            /*等待发送完毕  */
            while (USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);        
        
            return (ch);
    }
    
    ///重定向C库函数scanf到USART1
    int fgetc(FILE *f)
    {
            /* 等待串口1输入数据 */
            while (USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == RESET);
    
            return (int)USART_ReceiveData(USART1);
    }

    或者

    #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__ */


     

  • 相关阅读:
    docker swarm 集群搭建和臫servoce对服务扩容
    docker 可视化 portainer
    docker Compose
    hadoop2 安装
    y的最大值最小值切割
    滑块图片拼接
    ast 对象还原
    babel/types is判断
    t.isLiteral()
    杂题集合
  • 原文地址:https://www.cnblogs.com/Ph-one/p/4006331.html
Copyright © 2011-2022 走看看