【基于stm32f407应用】使用printf打印数据

原理图:

图1:采用芯片 stm32f407vet6

【基于stm32f407应用】使用printf打印数据_第1张图片

图2:采用使用SP232进行串口通讯,使用PA9/PA10引脚

【基于stm32f407应用】使用printf打印数据_第2张图片

printf打印:

根据上面原理图,可知使用PA9/PA10进行RS232通讯,查找数据手册后,PA9为发送引脚,PA10为接收引脚。

【基于stm32f407应用】使用printf打印数据_第3张图片

编写代码:

1、初始化(需要GPIO初始化、USART初始化)

完成初始化后,再打开相应的使能

2、GPIO初始化

【基于stm32f407应用】使用printf打印数据_第4张图片

3、USART初始化

使用AF模式引脚

【基于stm32f407应用】使用printf打印数据_第5张图片

4、重定义printf

基于头文件改写printf

按照规则改写 fputc ,之后可在其他地方直接使用 printf 语句

【基于stm32f407应用】使用printf打印数据_第6张图片

5、编写测试语句

需要添加 #include

【基于stm32f407应用】使用printf打印数据_第7张图片

6、未配置微库

此时直接编译无报错

【基于stm32f407应用】使用printf打印数据_第8张图片

仿真后,需要点击3次才可以进行main中运行。直接下载,程序不运行。

【基于stm32f407应用】使用printf打印数据_第9张图片

7、上述步骤需要添加微库,才可以正常运行。

勾选“use MicroLIB”

【基于stm32f407应用】使用printf打印数据_第10张图片

运行编译后,正常运行,仿真、下载正常。

8、通讯数据演示

ASCII传输数据,不勾选16进制显示,打印字符串正常;

【基于stm32f407应用】使用printf打印数据_第11张图片

勾选16进制显示,打印数组正常。

【基于stm32f407应用】使用printf打印数据_第12张图片

# 可以选择不添加微库

使用下面代码改写 fputc 中的内容。

【基于stm32f407应用】使用printf打印数据_第13张图片

演示代码(访问密码:1666)icon-default.png?t=M85Bhttps://url48.ctfile.com/f/33868548-696554040-a22735?p=1666

你可能感兴趣的:(#,STM32F407,单片机,嵌入式硬件)