分享

轻触开关 介绍

 假老练雄 2023-04-20 发布于广东

一、轻触开关分类

    目前市面上的轻触开关很多,比如:

IMG_256

四脚轻触开关

IMG_257

轻触开关模块

IMG_258

两脚轻触开关

二、工作原理

    相对来说,“两脚轻触开关”和“轻触开关模块”的工作原理比较简单:按键按下,内部线路连通;按键抬起,内部线路断开。这里不做重点讨论。接下来,重点介绍四脚轻触开关的工作原理。

    如下图所示,四脚轻触开关有四个引脚,其中12号引脚在同一侧,34号引脚在另一侧。内部接线来看,13号引脚是相联的,24号引脚是相联的。那么这样的开关,我们应该怎么使用呢?

    原来,四脚轻触开关的接线方法是“对角线相连”。也就是要么连接14号引脚,要么连接23号引脚。连线完成后,按下开关,对角线方向的引脚就联通了,即14号引脚联通,23号引脚联通;松开开关,对角线方向的引脚断开。

IMG_259

三、实际应用:轻触开关控制LED灯的亮灭

    电路图如下所示。此时只需要按下轻触开关不松手,LED灯就会亮起;松开开关,LED灯熄灭。此实验中,轻触开关与LED灯串联使用,不需要编程。

IMG_260

四、利用“串口监视器”观察轻触开关的按键状态

1、电路图

    要注意:这个接线方式非常危险,弄不好会把UNO开发板直接烧坏!!!

    接下来,说一下接线的重点:一定要把一个10KΩ的电阻与轻触开关串联!!!

    接线方式如下:

    轻触开关、10KΩ的电阻直接串联在了开发板的5VGND接口之间。

    同时,在轻触开关与电阻之间引出一条杜邦线(下图中的红色导线)连接在数字端口8上。这条线非常重要,用来读取轻触开关的状态读数。

IMG_261

2、代码

int buttonState = 0;

void setup() {

  pinMode(8, INPUT);

  Serial.begin(9600);

}

void loop() {

  buttonState = digitalRead(8);

  Serial.println(buttonState);

  delay(100);

}

3、代码解释:

int buttonState = 0;

    定义一个整型变量buttonState,这个变量用来存储按键的状态。实际上,四脚轻触开关的状态只有两种:1=接通,0=断开

pinMode(8, INPUT);

    pinMode这个指令一直被我们用来把数字接口定义为输出端。但本实验,我们将尝试第一次用数字接口作为输入端,用来接收四脚轻触开关接通或断开的状态。

buttonState = digitalRead(8);

    digitalRead(数字引脚) 这个指令是用来读取数字端口接收的数据的。

    同时,用赋值符号“=”将读取到的数据赋值给buttonState

4、实验结果:

IMG_262

    松开开关时,串口监视器的读数是0;按下开关后(不松手),串口监视器的读数是1

5、决定读数的关键

①读数永远是0

    如果用来读取开关状态的这条红色导线的另一端位于电阻与GND之间,那么读数永远是0。因为导线实际上相当于已经连接在GND(负极)上。

IMG_263

②读数永远是1

    如果用来读取开关状态的这条红色导线的另一端位于5V与轻触开关之间,那么读数永远是1。因为导线实际上相当于已经连接在5V(正极)上。

IMG_264

    因此,这条红色导线的连接非常重要,一定不要接错!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    该文章已关闭评论功能
    类似文章 更多