STM32 PB0设置为输入的问题

[复制链接]
7450|4
 楼主| ZorroCN 发表于 2012-11-13 19:04 | 显示全部楼层 |阅读模式
芯片STM32F103,PB0设置为带上拉的输入,却发现电位无法拉高(高电位3.3V)
代码如下:
……

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOB, ENABLE);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO , ENABLE);
……

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_SetBits(GPIOB, GPIO_Pin_0);
……//在这里while(1);检查PB0,高电位

// GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_Init(GPIOB, &GPIO_InitStructure);
//在这里while(1);检查PB0,低电位,需要注意的是,如果上电之后对该引脚不做任何操作,则万用表检测到的也是高电位
airwill 发表于 2012-11-14 09:39 | 显示全部楼层
stm32 端口的上拉能力很弱, 是不是楼主的外围还有下拉的负载
可以端口全部外围电路先测试一下.
如果要明显的上拉效果, 还是推荐楼主使用外部上拉电阻
 楼主| ZorroCN 发表于 2012-11-15 09:55 | 显示全部楼层
2# airwill

外围没有下拉,不然的话,在操作之前也不会高电位。
另外,如果设置成浮空输入,则不会一直低电位,这一点非常奇怪。
lirunze 发表于 2012-11-24 14:58 | 显示全部楼层
浮空输入本来就不确定的啊
 楼主| ZorroCN 发表于 2012-11-29 13:47 | 显示全部楼层
我已经知道了,忘了内部的上拉和外面的是并联关系,乌龙了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

84

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部