ddllxxrr 发表于 2025-7-25 06:52

【APM32F402R Micro-EVB开发板测评】3,printf

我看了UART例程有printf,就高高兴兴地打开,想用一下printf.
谁知根本就不是我要的printf。例程的名字叫做pintf,其实是用串口函数输出一段字符。

那自已来吧。
1,我知道得应映一下
/* Private function prototypes ********************************************/
int fputc(int c,FILE *f)
{
       
        while(USART_ReadStatusFlag(USART1, USART_FLAG_TXBE) == RESET);
        USART_TxData(USART1,(uint8_t)c);
        return c;
}
注意:重要事情说三遍,一定要加上while(USART_ReadStatusFlag(USART1, USART_FLAG_TXBE) == RESET);
否则只打一个字符。
2,在头文件加上#include studio.h
3,   MDK魔术棒微库打开





在主函数加上一句printf就行了:


SystemCoreClockUpdate();
    SysTick_Config(SystemCoreClock / 1000);
       
          printf("Hello world!!!!!\n\r");
    while (1)
    {
      Delay();
//      for(i = 0; i < sizeof(txBuf); i++)
//      {
//            while(USART_ReadStatusFlag(USART1, USART_FLAG_TXBE) == RESET);
//            USART_TxData(USART1, txBuf);
//      }
      BOARD_LED_Toggle(LED2);
    }


运行结果:





天鹅绒之夜 发表于 2025-7-25 19:40

版主,您的这个实验是不是太简单了啊

ddllxxrr 发表于 2025-7-26 16:10

天鹅绒之夜 发表于 2025-7-25 19:40
版主,您的这个实验是不是太简单了啊

大道置简。要那么复杂干么?

天鹅绒之夜 发表于 2025-8-15 10:24

ddllxxrr 发表于 2025-7-26 16:10
大道置简。要那么复杂干么?

说得有道理
{:lol:}

ulystronglll 发表于 2025-9-2 16:06

printf函数通常需要通过串行通信接口 来实现输出。

macpherson 发表于 2025-9-2 17:14

在使用printf函数时,要注意性能和资源消耗

elsaflower 发表于 2025-9-2 21:02

长字符串打印卡顿?            

gygp 发表于 2025-9-4 13:21

需要实现一个函数来发送字符串。这个函数会遍历字符串中的每个字符,并调用上面实现的字符发送函数来发送每个字符。

ingramward 发表于 2025-9-4 15:27

频繁的printf调用可能会影响程序的执行效率,特别是在性能受限的嵌入式系统中。

DawnFervor 发表于 2025-9-4 20:46

就是不用printf函数。要自己写,要自己写

lihuami 发表于 2025-9-6 10:50

支持浮点数打印?               

风暴之眸 发表于 2025-9-6 13:10

printf用于格式化输出还是太方便了

霜之闪耀 发表于 2025-9-7 22:58

printf函数目前在嵌入式端不支持浮点打印吧!

mollylawrence 发表于 2025-9-8 13:17

printf函数是标准C库中用于格式化输出的函数

everyrobin 发表于 2025-9-8 15:16

printf函数是一个常用的调试工具,它可以将格式化的字符串输出到标准输出设备。

plsbackup 发表于 2025-9-9 12:14

启用 MicroLIB            

51xlf 发表于 2025-9-9 14:52

可使用缓冲队列 + 任务发送            

空灵回声 发表于 2025-9-9 15:23

是不是使用printf函数必须要启动Keil内置的MicroLib选项啊

ddllxxrr 发表于 2025-9-9 16:20

空灵回声 发表于 2025-9-9 15:23
是不是使用printf函数必须要启动Keil内置的MicroLib选项啊

恩,应该是

averyleigh 发表于 2025-9-9 18:08

将 C 标准库中的 printf 重定向到 串口
页: [1] 2
查看完整版本: 【APM32F402R Micro-EVB开发板测评】3,printf