打印

请教: STM32 IO口作输入用,检测高低电平

[复制链接]
4270|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
STM32 IO口作输入用,检测高低电平。 IO脚比如PD2,接拔码开关的一端,拔码开关的另一端接GND, PD2不接上下拉电阻,  (1)把PD2配置成上拉、下拉输入模式,拔码开关置为OFF时,仿真看到PD2的(IDR)值为0; 拔码开关置为ON时,仿真看到PD2的(IDR)值也为0。为什么会这样,拔码开关置为OFF时,PD2的(IDR)值应该为1,而拔码开关置为ON时,PD2的(IDR)值应该为0吧。 (2)把PD2配置成浮空输入模式, 拔码开关置为OFF时,仿真看到PD2的(IDR)值为1; 拔码开关置为ON时,仿真看到PD2的(IDR)值为0。为什么好像配置成浮空输入得到的结果反而是我想要的结果
沙发
戈卫东| | 2013-9-13 19:57 | 只看该作者
设成上拉, ODR要写1, 如果是下拉则ODR要写0------它的DATASHEET似乎没有说, 不过你不能不这么做.

使用特权

评论回复
板凳
戈卫东| | 2013-9-13 20:06 | 只看该作者
今天又仔细看了它的DATASHEET,发现它其实说了.....

使用特权

评论回复
地板
heng1386|  楼主 | 2013-9-14 08:34 | 只看该作者
是在把PD2配置成上拉下拉输入模式之前写ODR,还是之后写ODR。  还有为什么浮空输入也可以得到我想要的结果

使用特权

评论回复
5
戈卫东| | 2013-9-14 11:31 | 只看该作者
heng1386 发表于 2013-9-14 08:34
是在把PD2配置成上拉下拉输入模式之前写ODR,还是之后写ODR。  还有为什么浮空输入也可以得到我想要的结果 ...

之前之后无所谓的....
浮空可能是巧了---它正好VDD那边漏电流大一些

使用特权

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

本版积分规则

4

主题

125

帖子

2

粉丝