当前位置:首页 > 编程笔记 > 正文
已解决

NodeMCU ESP8266 读取按键外部输入信号详解(图文并茂)

来自网友在路上 150850提问 提问时间:2023-10-20 06:15:44阅读次数: 50

最佳答案 问答题库508位专家为你答疑解惑

NodeMCU ESP8266 读取按键外部输入信号教程(图文并茂)


文章目录

  • NodeMCU ESP8266 读取按键外部输入信号教程(图文并茂)
    • 前言
    • 按键输入
    • 常用接口
      • pinMode
      • digitalRead
    • 示例代码
    • 结论

前言

ESP8266如何检测外部信号的输入,通常可以检测到TTL电平的高电平和低电平。

TTL(Transistor-Transistor Logic)电平是一种常用的数字电平标准,通常用于数字电路和逻辑电路中。TTL电平具有以下特征和定义:

  • 输出状态
    • L:低于 0.8V
    • H:高于 2.4V
  • 输入状态:
    • L:低于 1.2V
    • H:高于 2.0V

下面我们需要通过构造外围的硬件电路来做外部信号输入的测试。

按键输入

通常我们可以使用外部按键作为信号输入的元器件,这里接一个上拉电阻之后连接一个按键,我们可以通过面包板来构建电路,具体电路图如下所示;

常用接口

pinMode

这里我们需要将D2引脚作为输入,具体接口使用如下所示;

pinMode(2, INPUT); 

digitalRead

这里需要使用接口digitalRead来获取GPIO输入的信号状态,可以读取高电平和低电平,

int buttonState = 0;            // 存储按钮状态,0表示未按下,1表示按下
buttonState = digitalRead(2);   // 读取按钮状态

示例代码

这段代码会将D2配置为输入引脚,D4配置为输出引脚。当按下按钮时(D2引脚为高电平),LED(D4引脚)会亮起,当释放按钮时(D2引脚为低电平),LED会熄灭。

const int buttonPin = D2;
const int ledPin = D4;void setup() {pinMode(buttonPin, INPUT);pinMode(ledPin, OUTPUT);
}void loop() {int buttonState = digitalRead(buttonPin);if (buttonState == HIGH) {digitalWrite(ledPin, HIGH);} else {digitalWrite(ledPin, LOW);}
}

结论

本文简单介绍了NodeMCU ESP8266获取外部信号的方法,并给出相应的实验,通过按键控制LED灯的亮和灭。

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"NodeMCU ESP8266 读取按键外部输入信号详解(图文并茂)":http://eshow365.cn/6-20128-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!