第5节 按钮开关

第5节 按钮开关

对于硬件的控制,我们常用硬件开关来控制Arduino开发板上其他外接硬件的通断逻辑。比如,一盏LED灯,硬件上最好有个开关,按一下开关,就让LED灯亮,再按一下开关,就让LED灯关闭。

开关的外形有多种式样,四根引脚、三根引脚。不论是三引脚还是四引脚,原理都是相同的。如果选择四引脚开关,开发者就得自己搭建一个简单的电路;三引脚的按钮开关是对四引脚开关的集成封装,简化了外围电路的设计,很适合对硬件缺乏深入认识的软件开发者。

这里我们选用使用最方便的三引脚按钮开关。我们安豆杂货铺提供的按钮开关,就是这样的三引脚开关。

5.1 硬件连接

三引脚按钮开关的引脚对应如下,

含义 引脚位置 连接 开发板引脚
控制 S <--> D10
VCC 电源 <--> 5V
接地 GND <--> GND

在实际的使用当中,按钮开关经常连接到扩展板上。例如这里将按钮开关连接到10组扩展口上,

含义 引脚位置 连接 扩展板引脚
控制 S <--> 10组S
VCC 电源 <--> 10组V
接地 GND <--> 10组G

5.2 控制代码

首先我们初始化引脚,按钮使用的是D10,就要初始化D10为输入引脚,

每按一次按钮,都会触发按下松开两个响应,也就是说,按钮按下后会自动弹起,不会保持被按下的状态,

  1. 当按下开关按钮的时候,S引脚会变成LOW电平;
  2. 当松开开关按钮的时候,S引脚会变成HIGH电平;

所以当出现了这两个变化的时候,才能判断按钮被按下并抬起了一次。

采用digitalRead()读取按钮对应引脚的电平,判断它当前是否被按下,

5.3 查看结果

把以上代码部署到设备上,打开串口调试窗口,按下并松开开关,可以看到类似如下输出信息,


***************************************


本系列课程使用到的Arduino开发板、扩展板以及其他相关的传感器,各位可以根据我们文章中介绍的硬件在淘宝网选购。
您也可以在我们的网店安豆的杂货铺中购买,这些相关硬件都由我们为您把关购买,为大家节省选择的精力与时间。同时也感谢大家对我们这些码农的支持。

最后再次感谢各位读者对安豆的支持,谢谢:)