香主,IO口的上下拉电阻使用是否有什么特殊的地方?

[复制链接]
 楼主| playzwm 发表于 2009-7-20 14:26 | 显示全部楼层 |阅读模式
现在发现,设置了下拉按键,外部没接下拉电阻,在按键按下接收到一次键值之后,却发现,无法再次触发了,不知为何?
香水城 发表于 2009-7-20 14:37 | 显示全部楼层

请说清楚一些:什么芯片?如何触发?软件怎么处理的?

硬件如何连接按键的?
 楼主| playzwm 发表于 2009-7-20 14:44 | 显示全部楼层

硬件同:香主,救急,关于RTC时钟

按键采用下拉电阻,VDD直接触发,软件貌似是扫描方式,另作为输入判断也会出问题,不知哪有问题,需要软件什么部分,我找SW要
 楼主| playzwm 发表于 2009-7-20 14:50 | 显示全部楼层

按键及输入图纸

 楼主| playzwm 发表于 2009-7-20 14:54 | 显示全部楼层

按键

香水城 发表于 2009-7-20 15:12 | 显示全部楼层

软件处理是什么思路?什么流程?

扫描?中断?混合?
一朝成名 发表于 2009-7-20 15:14 | 显示全部楼层

模拟器就属于软件处理器~

比如说SkyEye
etomeok 发表于 2009-7-20 19:19 | 显示全部楼层

IO 配置输入下拉的问题

IO配置为输入,软件定时扫描(读这些口),测试发现如果某个按键按下,即该口 被上拉为高,读这个口也为高,但是按键释放后,这个口的状态就一直为高,而不是被配置的下拉作用置低。

配置如下    
/* Configure PD.09-15 (09:ENTER,10:DOWN,11:UP,12:ESC,13:STOP,14:STARTB,15:STARTA) as output*/
    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9|GPIO_Pin_10| GPIO_Pin_11| GPIO_Pin_12| GPIO_Pin_13| GPIO_Pin_14| GPIO_Pin_15;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD;
    GPIO_Init(GPIOD, &GPIO_InitStructure);

扫描IO的代码如下
status = (GPIO_ReadInputData(GPIOD)&0xfe00)>>9;
etomeok 发表于 2009-7-20 19:23 | 显示全部楼层

IO 配置输入下拉的问题

补充,外部接了下拉电阻这个问题就ok了
香水城 发表于 2009-7-20 19:25 | 显示全部楼层

很可能是下拉太弱导致

请用示波器看看这个引脚,压下按键和施放按键后引脚上的电平变化。


如果加外部下拉能够解决问题,有可能电路上的寄生电容太大,检查一下PCB的设计。
zhaoyu2005 发表于 2009-7-21 10:01 | 显示全部楼层

应该是电路设计的问题

我用上拉输入,接按键很正常,检测按键很正常
 楼主| playzwm 发表于 2009-7-21 10:04 | 显示全部楼层

香主,看资料上,内置上下拉电阻阻值应该是40k左右,

很可能是下拉太弱导致?这句话如何解释,
香水城 发表于 2009-7-21 10:28 | 显示全部楼层

我说的下拉太弱是相对系统的寄生电容而言

如果你的系统的寄生电容较大,40K左右的下拉电阻不能很快地把这个电容的电量释放掉,则会产生你看到的现象。

现在你外加了下拉电容,解决了问题,佐证了我的这个判断。
 楼主| playzwm 发表于 2009-7-21 17:05 | 显示全部楼层

香主,貌似并非如此

在作为输入口处理时,并未发生VDD电源触发,却有时可检测到高,还可以恢复,电路依然如此,如果解释为寄生电容,那么这种状况不可解释,我觉得内部的上下拉不是很可靠,具体什么原因,不知道。
香水城 发表于 2009-7-21 17:16 | 显示全部楼层

你有什么理由怀疑内部的上下拉不是很可靠?

我不反对你的怀疑,但我需要合理的解释。

我在10楼建议你:请用示波器看看这个引脚,压下按键和施放按键后引脚上的电平变化。不知道结果如何?如果你能看到一个缓慢的放电过程,则证明了我的判断。

如果你认为内部的上下拉不是很可靠,也就是说是时好时坏,这很难解释,难道说硅片上也有虚焊的问题,这是不可能的。

请看看STM32参考手册上的GPIO端口的框图,内部的上下拉是由MOS管控制的。
chizhafengyun 发表于 2013-9-28 21:54 | 显示全部楼层
VCC与IO之间没有接限流电阻?
是不是上电一次,IO就烧掉了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

82

帖子

0

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

13

主题

82

帖子

0

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