你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。
chrome
firefox
safari
ie8及以上
ST
意法半导体官网
STM32
中文官网
ST
全球论坛
登录/注册
首页
技术问答
话题
资源
创客秀
视频
标签
积分商城
每日签到
关于stm32f407外部中断的容易干扰的问题
[复制链接]
XJASGJFH
提问时间:2017-9-6 10:33 /
我是刚刚学习stm32单片机的,在使用外部中断的时候遇到一个问题,单片机的IO口如果配置为输入模式,中断极其容易触发,手随便摸一下就会触发,尝试过外部加电容下拉电阻 都不行。最后将IO口配置为输出模式,一下就正常了,再也不乱触发了。我觉得很奇怪,对于中断应该属于输入时间,为何要将IO配置为输出模式才可行呢。顺便一提不知道为何关于外部中断容易干扰的问题,网上居然没有明确方案,都是在哪里说加电阻电容施密特触发器的。
赞
0
收藏
1
评论
13
分享
发布时间:2017-9-6 10:33
举报
请先
登录
后回复
13个回答
XJASGJFH
回答时间:2017-9-6 10:53:04
a0a.1 32b0c
没人来,我自己顶一顶
赞
0
评论
回复
支持
反对
xushi_123
回答时间:2017-9-6 13:39:36
a0a.1 32b0c
帮忙顶顶。说不定技术支持就来了
赞
0
评论
回复
支持
反对
XJASGJFH
回答时间:2017-9-6 14:36:14
a0a.1 32b0c
技术支持,在哪里啊,帮我解答下我的疑惑吧!万分感谢
赞
0
评论
回复
支持
反对
XJASGJFH
回答时间:2017-9-6 16:47:47
a0a.1 32b0c
这里不如发邮件来的快
赞
0
评论
回复
支持
反对
zhuri_1
回答时间:2017-9-7 14:44:56
a0a.1 32b0c
内部上下拉配一下看看
赞
0
评论
回复
支持
反对
zhjb1
回答时间:2017-10-27 07:08:06
a0a.1 32b0c
外触发有多种:信号、按键、等。仅就这两种输入性的做一讨论。
信号分成短脉冲或长脉冲,前者时间短设置为nS级别或以下,后者较长多为mS或以上级别的。短脉冲有系统响应时间问题,因此有时需要扩展脉宽,采用施密特类型的门电路是非常好的选择,它本身就可以将脉宽稍稍扩宽,如果合理设计可以扩得更宽;关键的一点是由于施密特门电路的特性[内部实际上是RS触发器],对消除无效的尖峰干扰是有好处的。对于宽脉冲除了可以采用施密特之外,还可以采用其他的RC电路来消除干扰。而像按键之类的,机械接触点的天然抖动,但由于速度很慢多为数mS或更大,采用施密特电路或采用RC点路消抖就够了。如果连接点距离很近,施密特门电路1~2个就够了;如果距离较远,需要考虑采用RC或光耦电路。仅供参考。
评分
参与人数
1
ST金币
+5
收起
理由
zero99
+ 5
查看全部评分
赞
0
评论
回复
支持
反对
yygkqzh
回答时间:2017-10-27 08:28:06
a8a.1 32b0c
加外部上拉即可
赞
0
评论
回复
支持
反对
无薪税绵
回答时间:2017-10-27 09:15:46
a0a.1 32b0c
IO口配置成输入模式后,触发模式有以下四种:
模拟输入、浮空输入、带下拉输入、带上拉输入
一般情况下检测低电平的话,检测口是用上拉输入,
但楼主要,根据实际情况配置。
还有,中断线的触发方式配置:
下降沿触发、上升沿触发、任意电平触发,
如果是低电平检测,就要选择下降沿触发。
还有一个,进入中断后,建议做一个延时检测,
如果在20ms内,电平保持没有变化,就认为中断有效,
否则,就认为中断无效。
如果以上都做好了,但干扰还是存在,那就检测硬件是否存在问题了。
评分
参与人数
1
ST金币
+5
收起
理由
zero99
+ 5
查看全部评分
赞
0
评论
回复
支持
反对
wenyangzeng
回答时间:2017-10-27 09:58:50
a0a.1 32b0c
本帖最后由 wenyangzeng 于 2017-10-27 10:31 编辑
用手摸IO口来判断容易受干扰与否有点不科学。冬天气候干燥易产生静电说不定CPU就挂了。
评分
参与人数
1
ST金币
+2
收起
理由
zero99
+ 2
查看全部评分
赞
0
评论
回复
支持
反对
wolfgang
回答时间:2017-10-27 22:09:53
a0a.1 32b0c
是否没有作滤波?
赞
0
评论
回复
支持
反对
五哥1
回答时间:2017-10-28 01:35:34
a1024a.1 32b0c
9楼正解
赞
0
评论
回复
支持
反对
asmhai
回答时间:2017-10-30 05:48:31
a0a.1 32b0c
签到签到,早上好!
赞
0
评论
回复
支持
反对
adeli
回答时间:2017-12-20 11:11:28
a0a.1 32b0c
干扰最大可能就是硬件电路不稳定产生的
赞
0
评论
回复
支持
反对
所属标签
相似问题
关于
意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号
手机版
快速回复
返回顶部
返回列表
信号分成短脉冲或长脉冲,前者时间短设置为nS级别或以下,后者较长多为mS或以上级别的。短脉冲有系统响应时间问题,因此有时需要扩展脉宽,采用施密特类型的门电路是非常好的选择,它本身就可以将脉宽稍稍扩宽,如果合理设计可以扩得更宽;关键的一点是由于施密特门电路的特性[内部实际上是RS触发器],对消除无效的尖峰干扰是有好处的。对于宽脉冲除了可以采用施密特之外,还可以采用其他的RC电路来消除干扰。而像按键之类的,机械接触点的天然抖动,但由于速度很慢多为数mS或更大,采用施密特电路或采用RC点路消抖就够了。如果连接点距离很近,施密特门电路1~2个就够了;如果距离较远,需要考虑采用RC或光耦电路。仅供参考。
评分
查看全部评分
模拟输入、浮空输入、带下拉输入、带上拉输入
一般情况下检测低电平的话,检测口是用上拉输入,
但楼主要,根据实际情况配置。
还有,中断线的触发方式配置:
下降沿触发、上升沿触发、任意电平触发,
如果是低电平检测,就要选择下降沿触发。
还有一个,进入中断后,建议做一个延时检测,
如果在20ms内,电平保持没有变化,就认为中断有效,
否则,就认为中断无效。
如果以上都做好了,但干扰还是存在,那就检测硬件是否存在问题了。
评分
查看全部评分
用手摸IO口来判断容易受干扰与否有点不科学。冬天气候干燥易产生静电说不定CPU就挂了。
评分
查看全部评分