利用STM32F4串口重定向Printf()

本文介绍了如何在STM32F4上将printf()函数重定向到USART1,通过IO引脚复用功能初始化PA9和PA10为串口的Tx和Rx,接着详细阐述了USART外设的初始化流程,并展示了如何实现printf()的串口打印功能,最终通过串口调试助手验证通信成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IO引脚复用功能初始化

 我们需要将PA9和PA10当做USART1的Tx和Rx引脚来用,也就是说此节课的PA9和PA10已不是通用IO的作用了,而是芯片内部的外设的接口引脚。STM32将这种应用叫做“I0引脚复用”,这也就说PA9将被配置成“复用推挽输出模式”,PA10将被配置成“复用上拉输入模式”。

IO引脚的复用功能

我们知道,STM32F4 有很多的片内外设,这些外设的外部引脚都是由GPIO 复用得来的。也就是说,一个 GPIO如果可以复用为片内外设的功能引脚,那么当这个 GPIO 作为片内外设使用的时候,就叫做复用。并且片内外设的功能引脚也不是随意复用的,也就是说片内外设的功能引脚是特定在某个或者多个GPIO引脚上的。例如USART1的Tx引脚就固定在PA9/PA15上,Rx引脚就固定在PA10/PB3上。具体的哪个外设可以在哪个GPIO上进行复用,详细知识在《RM0383_STM32F411CCU6_Reference manual》第八章和《STM32f411xC Datasheet》芯片数据手册有详细的讲解。我们这里只讲解外设复用配置库函数。

void GPIO_PinAFConfig(GPIO_TypeDef* GPIOx, uint16_t GPIO_PinSource, uint8_t GPIO_AF)

第一个参数GPIO_TypeDef* GPIOx:表示哪个GPIO端口。

第二个参数uint16_t GPIO_PinSource:表示哪个IO口。

第三个参数uint8_t GPIO_AF:哪个外

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值