手拿镊子干扰单片机输入端口

[复制链接]
3887|20
 楼主| 它山之石 发表于 2015-7-18 16:51 | 显示全部楼层 |阅读模式

如图所示电路,连接单片机输入端口。

正常应该是S1按钮被按下时候,单片机才会检测到0.触发相应动作。
但现在我徒手用镊子触碰S1按钮上端A点,A点电压由5V变成4.4V左右(由于没有示波器,所以用万用表测的),并且单片机检测到0.触发相应动作。
我用万用表表笔触碰A点,单片机运行正常,不会出现上述的误触发现象。

大家帮分析下为什么?

谢谢。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
花戒 发表于 2015-7-18 21:29 | 显示全部楼层
1.人体带有从空中传下来的50HZ感应电,用镊子去碰,会使IO口瞬间有个跳变.
2.如果你的板子连着地,人体相当于一个电容,会瞬间把A点拉低.
 楼主| 它山之石 发表于 2015-7-18 21:51 | 显示全部楼层
花戒 发表于 2015-7-18 21:29
1.人体带有从空中传下来的50HZ感应电,用镊子去碰,会使IO口瞬间有个跳变.
2.如果你的板子连着地,人体相当于 ...

那么怎么能避免这种现象呢?
ddllxxrr 发表于 2015-7-19 08:23 | 显示全部楼层
这个很简单,你把上拉换成小一点的,但不要小于1K

mmuuss586 发表于 2015-7-19 15:49 | 显示全部楼层
用根导线接下看看;
nbsmaps 发表于 2015-7-20 09:01 | 显示全部楼层
程序里动一下,加个延时去抖就行了!约10MS延时,第二种方法,把端口设为准双向,而不是仅输入或开漏。都可以解决
gx_huang 发表于 2015-7-20 09:52 | 显示全部楼层
万用表的表笔,和人体之间一般是绝缘的e镊子,一般是金属的吧。
人体的干扰,其实主要是市电的干扰最大,当然,瞬间接触,也是一个干扰源,说明你的软件处理也有问题。
对于硬件来说,按键最好加硬件的滤波,特别是工业控制设备。
受不了了 发表于 2015-7-20 11:45 | 显示全部楼层
产品说明书里黑体注明:本产品使用过程中严禁用镊子触碰芯片管脚!
bkn1860 发表于 2015-7-20 11:53 | 显示全部楼层
好任性的实验,不明白这样做的目的是什么? 被静电搞挂掉可能好大
ningling_21 发表于 2015-7-20 12:54 | 显示全部楼层
有时电子器件静电击穿就是这样造成的
创隆电子 发表于 2015-7-20 21:22 | 显示全部楼层
我们俗称"感应电干扰",最好不要用手直接触碰,会有交流干扰
 楼主| 它山之石 发表于 2015-7-21 08:55 | 显示全部楼层
创隆电子 发表于 2015-7-20 21:22
我们俗称"感应电干扰",最好不要用手直接触碰,会有交流干扰

人体带 交流电么?
 楼主| 它山之石 发表于 2015-7-21 08:56 | 显示全部楼层
ddllxxrr 发表于 2015-7-19 08:23
这个很简单,你把上拉换成小一点的,但不要小于1K

这个可以试试
xyz549040622 发表于 2015-7-21 10:34 来自手机 | 显示全部楼层
你这个实验不能证明电路的问题。
manbo789 发表于 2015-7-21 15:42 | 显示全部楼层
并104电容,
 楼主| 它山之石 发表于 2015-7-21 17:03 | 显示全部楼层
xyz549040622 发表于 2015-7-21 10:34
你这个实验不能证明电路的问题。

这种问题大家都遇到过么?

我的软件没有滤波。输入端口对地也没有加电容。
hongyanj 发表于 2015-7-22 08:23 | 显示全部楼层
汗!人体电阻最大也才几百K,漏电开关测试就是使用30K电阻
根据你的数据可以算出你的电阻是83K
 楼主| 它山之石 发表于 2015-7-22 09:07 | 显示全部楼层
本帖最后由 它山之石 于 2015-7-22 09:11 编辑
hongyanj 发表于 2015-7-22 08:23
汗!人体电阻最大也才几百K,漏电开关测试就是使用30K电阻
根据你的数据可以算出你的电阻是83K ...


那么如何避免这种现象呢?我的程序里面虽然没有加软件滤波,但是也是要低电平才会触发的呀。人拿着镊子触碰单片机引脚就会触发,并且引脚由5V编程4.4V.如果说4.4V是由于上拉电阻与人体电阻分压所得。那么触发的低电平是从何而来的啊?人体相当于一个电阻和电容的并联么?
hongyanj 发表于 2015-7-22 16:30 | 显示全部楼层
本帖最后由 hongyanj 于 2015-7-22 16:55 编辑
它山之石 发表于 2015-7-22 09:07
那么如何避免这种现象呢?我的程序里面虽然没有加软件滤波,但是也是要低电平才会触发的呀。人拿着镊子触 ...

首先逆确定你的单片机时低电平导通.通常单片机,底电平是1/2电压.
你可以在你开关下面再接个11K或者15K的电阻确认.
避免的方法有很多,
比如单片机防抖电路,元件.
程序里面也可以避免!
你这开关是自接接中断,还是普通IO扫描?
具体情况具体说.
人体接触的情况,很复杂,瞬间产生低电平并非不可能!
电死你单片机都不奇怪!
如果实际使用中要接触人体,肯定要加隔离电路!
程序可以在触法后在一定时间内再扫描IO,

皈依 发表于 2015-7-23 11:59 | 显示全部楼层
这个实验好任性。。。
为什么一定要用人体静电去干扰单片机呢。。。很危险的
最好的避免方法就是用热熔胶把MCU盖掉,用手碰不到。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:<img src="static/image/smiley/comcom/3.gif" class="vm">

95

主题

547

帖子

4

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