打印
[STM32F4]

stm32f4串口通信实验的PA9 PA10模式设置问题

[复制链接]
409|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
两只袜子|  楼主 | 2024-10-31 12:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这一段是示例代码中GPIO初始化代码:
GPIO_Initure.Pin=GPIO_PIN_9; //PA9
GPIO_Initure.Mode=GPIO_MODE_AF_PP;//复用推挽输出
GPIO_Initure.Pull=GPIO_PULLUP;//上拉
GPIO_Initure.Speed=GPIO_SPEED_FAST;//高速
GPIO_Initure.Alternate=GPIO_AF7_USART1; //复用为 USART1
HAL_GPIO_Init(GPIOA,&GPIO_Initure); //初始化 PA9


GPIO_Initure.Pin=GPIO_PIN_10;//PA10
HAL_GPIO_Init(GPIOA,&GPIO_Initure); //初始化 PA10,此处没有对结构体中Mode进行改动,仍然是GPIO_MODE_AF_PP;//复用推挽输出


初始化PA10时也是设置成了 GPIO_MODE_AF_PP,复用的推挽输出模式,这里PA10为数据输入口为啥会设为输出模式呢?

使用特权

评论回复
沙发
一秒落纱| | 2024-12-9 22:25 | 只看该作者
PA10不是接收吗,不是串口的接收吗

使用特权

评论回复
板凳
三生万物| | 2024-12-10 02:00 | 只看该作者
这个看你像怎么设置呗,你是像当个普通的串口通讯吗?

使用特权

评论回复
地板
淡漠安然| | 2024-12-10 03:00 | 只看该作者
STM32GPIO配置中,PA9PA10通常用于USART1TX(发送)和RX(接收)引脚

使用特权

评论回复
5
江河千里| | 2024-12-10 04:00 | 只看该作者
根据你的配置,PA9被配置为复用推挽输出模式(GPIO_MODE_AF_PP),用于USART1TX功能,这是正确的。然而,PA10也被配置为复用推挽输出模式(GPIO_MODE_AF_PP),这通常是用于输出引脚的配置,而不是输入引脚

使用特权

评论回复
6
夜阑风雨| | 2024-12-10 05:00 | 只看该作者
PA10作为USART1RX引脚,应该被配置为输入模式,而不是输出模式。如果PA10被错误地配置为输出模式,可能会导致USART1的接收功能无法正常工作

使用特权

评论回复
7
远山寻你| | 2024-12-10 06:00 | 只看该作者
PA10应该被配置为复用开漏输入模式(GPIO_MODE_AF_INPUT)或复用推挽输入模式(GPIO_MODE_AF_PP),具体取决于USART1的配置。通常情况下,复用开漏输入模式(GPIO_MODE_AF_INPUT)是更常见的选择

使用特权

评论回复
8
光辉梦境| | 2024-12-10 07:00 | 只看该作者
确保PA10被正确配置为输入模式,以保证USART1的接收功能正常工作。通过修改PA10的配置为复用开漏输入模式(GPIO_MODE_AF_INPUT),可以解决这个问题

使用特权

评论回复
9
暖了夏天蓝了海| | 2024-12-10 08:00 | 只看该作者
可能例程就这么写的吧,其实初始化啥都是可以的,应该

使用特权

评论回复
10
别乱了阵脚| | 2024-12-10 09:00 | 只看该作者
一般来说,可以设置成输出,然后再配置成输入就可以了

使用特权

评论回复
11
冰春彩落下| | 2024-12-10 10:00 | 只看该作者
我也没这么配置过,一般都是配置一个输出一个输入

使用特权

评论回复
12
AloneKaven| | 2024-12-10 12:47 | 只看该作者
这个设置起来应该是无所谓的吧?

使用特权

评论回复
13
caoenq| | 2024-12-10 13:58 | 只看该作者
远山寻你 发表于 2024-12-10 06:00
PA10应该被配置为复用开漏输入模式(GPIO_MODE_AF_INPUT)或复用推挽输入模式(GPIO_MODE_AF_PP),具体取 ...

STM32的IO口只有8种功能可配置:上拉输入、下拉输入、浮空输入、模拟输入、推挽输出、开漏输出,复用推挽输出、复用开漏输出。没有“复用推挽输入模式”

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2055

主题

7458

帖子

10

粉丝