手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

STM32F411RE使用printf函数

时间:2024-10-12 12:22:55

printf是C语言标准库里一个必不可少的函数,同时这个函数孀晏弁钾也是我们做单片机非常喜欢的串口调式函数,省去了很多字符串转换的操作。这里以STM32F411RE芯片为例,介绍些printf函剞麽苍足数的用法,基础代码是用STM32CubeMX生成的。

工具/原料

STM32CubeMX

Keil

生成MX基础代码

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 C蚪嬷吃败ODE END Includes */之间添加自己的头文件,printf在st颊俄岿髭dio.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){HA讣嘬铮篌L_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函数
© 手抄报圈