防止电路开关弹跳的常用方法

电源/新能源

3430人已加入

描述

什么是开关弹跳?

当我们按下按钮或拨动开关或微动开关时,两个金属部件会接触以短路电源。但它们不会立即连接,而是金属部件在实际稳定连接之前连接和断开几次。释放按钮时也会发生同样的事情。这会导致误触发或多次触发,例如多次按下按钮。这就像一个弹跳的球从高处落下,它一直在表面弹跳,直到它静止。

开关电路

简单地说,开关弹跳是任何开关的非理想行为,它会生成单个输入的多个转换。当我们处理电源电路时,开关弹跳不是主要问题,但是当我们处理逻辑或数字电路时,它会引起问题。因此,为了消除电路中的抖动,使用了开关去抖动电路。

什么是软件去抖?

去抖也发生在软件中,而编程程序员会增加延迟以消除软件去抖。添加延迟会强制控制器在特定时间段内停止,但在程序中添加延迟并不是一个好的选择,因为它会暂停程序并增加处理时间。最好的方法是在代码中使用中断来进行软件弹跳。Arduino 有防止软件弹跳的代码。

开关去抖方法

首先,我们将演示没有开关去抖动的电路。

开关电路

开关电路

您还可以在弹跳按钮时在示波器中看到波形。它显示在按钮切换期间发生了多少弹跳。

开关电路

防止电路开关弹跳的常用方法有3种。

硬件去抖

RC 去抖

开关去抖IC

1.硬件去抖

在硬件去抖动技术中,我们使用SR 触发器来防止电路发生开关抖动。这是所有方法中最好的去抖动方法。

所需组件

与非门IC 74HC00

拨动开关

电阻器(10k -2nos.)

电容(0.1uf)

引领

面包板

电路原理图

开关电路

开关电路

硬件去抖电路的工作

该电路由两个Nand 门(74HC00 IC)组成,形成一个SR 触发器。正如您在电路图中看到的,只要拨动开关切换到 A 侧,输出逻辑就会变为“高”。在这里,我们使用示波器来检测弹跳。而且,正如您在下面给出的波形中看到的那样,逻辑正在以轻微的曲线移动而不是弹跳。电路中使用的电阻是上拉电阻。

每当开关在触点之间移动以产生反弹时,触发器都会保持输出,因为“0”是从与非门的输出反馈的。

开关电路

2. RC去抖

RC 仅由其名称定义,该电路使用 RC 网络来防止开关弹跳。电路中的电容器滤除开关信号的瞬间变化。当开关处于打开状态时,电容器两端的电压保持为零。最初,当开关打开时,电容器通过 R1 和 R2 电阻器充电。

开关电路

当开关闭合时,电容器开始放电至零,因此反相施密特触发器输入端的电压为零,因此输出变为高电平。

在弹跳情况下,电容器停止 Vin 处的电压,直到它达到 Vcc 或接地。

为了提高 RC 去抖动的速度,我们可以连接一个二极管,如下图所示。因此,它减少了电容器的充电时间。

开关电路

3.开关去抖IC

市场上有用于开关去抖动的 IC。一些去抖IC 是 MAX6816、MC14490 和 LS118。

下面是使用MAX6818进行开关去抖的电路图。

开关电路

所以在这里我们了解了按钮如何产生开关弹跳效果以及如何通过使用开关去抖电路来防止它。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分