STM32F411RE使用printf函数

2025-10-23 10:12:11

1、新建一个STM32CubeMX工程,选择STM32F411RE芯片,打开工程,切换到Pinout页面,展开USART1,选择“Asynchronous”模式。

STM32F411RE使用printf函数

STM32F411RE使用printf函数

2、切换到“Configuration”页面,点击USART1,配置串口基本参数。

STM32F411RE使用printf函数

3、切换到“Parameter Settings”,设置串口通信所需的波特率、校验方式、停止位等关键信息,同时配置好GPIO和NVIC,这里NVIC我是关掉的。

STM32F411RE使用printf函数

4、工程配置完毕,准备生产代码,因为这属于STM32CubeMX的基本操作,就不再多说了。

STM32F411RE使用printf函数

1、在/* USER CODE BEGIN Includes */和/* USER CODE END Includes */之间添加自己的头文件,printf在stdio.h,也就是这样:

/* USER CODE BEGIN Includes */#include <stdio.h>/* USER CODE END Includes */

STM32F411RE使用printf函数

2、重写fputc函数,注意函数返回值和入口参数:

/* USER CODE BEGIN 0 */int fputc(int ch, FILE * stream){ HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 1000);  return ch;}/* USER CODE END 0 */

STM32F411RE使用printf函数

3、在main函数的while循环中使用printf发送需要的字符串:

Hello world !

STM32F411RE使用printf函数

4、测试如下:

STM32F411RE使用printf函数

5、可以试试添加一个计数器,将发送字符串的次数显示出来:

STM32F411RE使用printf函数

STM32F411RE使用printf函数

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢