OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9112|回复: 8

STM32F4xx的GPIOA.9和GPIOA.10口配制成复用串口功能时,两个IO口都配置成了复用推挽上拉输出,但RX是输入啊?

[复制链接]

24

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
248
金钱
248
注册时间
2015-7-24
在线时间
32 小时
发表于 2015-7-30 15:40:32 | 显示全部楼层 |阅读模式
5金钱
STM32F4xx的GPIOA.9和GPIOA.10口配制成复用串口功能时,怎么知道哪个IO口是输入输出的?
GPIO_InitStruct.GPIO_Pin= GPIO_Pin_9;
GPIO_InitStruct.GPIO_Mode=GPIO_Mode_AF;    
GPIO_InitStruct.GPIO_Speed=GPIO_Fast_Speed;   
GPIO_InitStruct.GPIO_OType=GPIO_OType_PP;   
GPIO_InitStruct.GPIO_PuPd=GPIO_PuPd_UP;     
GPIO_Init(GPIOA,&GPIO_InitStruct);


GPIO_InitStruct.GPIO_Pin= GPIO_Pin_10;
GPIO_InitStruct.GPIO_Mode=GPIO_Mode_AF; 
GPIO_InitStruct.GPIO_PuPd=GPIO_PuPd_UP;   
GPIO_Init(GPIOA,&GPIO_InitStruct);

GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1);
GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1);

最佳答案

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2015-7-30 15:40:33 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

14

主题

1592

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
2622
金钱
2622
注册时间
2014-7-17
在线时间
350 小时
发表于 2015-7-31 00:24:51 | 显示全部楼层
复用推挽上拉输出?????
回复

使用道具 举报

38

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2014-8-1
在线时间
6 小时
发表于 2015-7-31 08:49:35 | 显示全部楼层
F4中文手册上写明了  输出的时候,输入是浮空输入有用
回复

使用道具 举报

24

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
248
金钱
248
注册时间
2015-7-24
在线时间
32 小时
 楼主| 发表于 2015-8-1 08:18:06 | 显示全部楼层
回复【4楼】静:
---------------------------------
手册上确实是这样,因为USART1复用的时候,TX自动接PA.9的复用功能输出,RX自动接PA.10的复用功能输入。虽然都配制成输出了,但输入还是有效的
回复

使用道具 举报

24

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
248
金钱
248
注册时间
2015-7-24
在线时间
32 小时
 楼主| 发表于 2015-8-2 16:21:02 | 显示全部楼层
回复【4楼】静:
---------------------------------
今天,用IO口模拟IIC,都配置成输出,SDA接的GPIOB.7不是输出的时候输入能用嘛。但就是不能用。还得输入的时候配输入,输出的时候配输出,这就糊涂了。求大神指导
回复

使用道具 举报

24

主题

51

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
248
金钱
248
注册时间
2015-7-24
在线时间
32 小时
 楼主| 发表于 2015-8-2 16:48:19 | 显示全部楼层
回复【6楼】a1154870074:
---------------------------------
STM32F4xx的手册写的不详细,看了一下stm32f103的手册,根据stm32f103手册描述把接SDA的GPIOB.7配制成输出是可以得到IO口状态的。stm32f103手册描述如下:开漏模式时对输入数据寄存器的读访问可得到IO状态。记得要上拉
回复

使用道具 举报

38

主题

109

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
294
金钱
294
注册时间
2014-8-1
在线时间
6 小时
发表于 2015-8-2 22:10:47 | 显示全部楼层
回复【6楼】a1154870074:
---------------------------------
模式配置问题
回复

使用道具 举报

3

主题

33

帖子

0

精华

初级会员

Rank: 2

积分
89
金钱
89
注册时间
2017-3-8
在线时间
36 小时
发表于 2017-3-23 19:56:34 | 显示全部楼层
您看一下配置的參數,Mode配置成復用的時候只有推挽和開漏,沒有輸入或輸出,輸入或輸出只有在Mode裡才能選擇。

基於推挽和開漏的模式選擇,我覺得推挽就無需家電阻以保持正確的電平,但開漏就需要,並且開漏能透過上拉電阻而實現電平轉換的功能。

以上為小弟的拙見,請各位大神指教與賜教,謝謝!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-18 22:51

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表