ESP8266的輸入和輸出


ESP8266的輸入和輸出

這篇文章主要講述了如何使用ESP8266讀取數字輸入和數字輸出,這里使用的是ESP-12F的Node MCU模塊。

image-20210205213840618

圖片來源於必應搜素

ESP8266 NodeMCU 控制數字輸出

首先,您需要將要控制的 GPIO 設置為OUTPUT使用pinMode功能如下:

pinMode(GPIO, OUTPUT);

要控制數字輸出,您只需使用digitalWrite()函數,函數的參數位陣腳和狀態(高或低,1或0)

digitalWrite(GPIO, STATE);

ESP8266 NodeMCU 讀取數字輸入

First, set the GPIO you want to read as INPUT, using the pinMode() function as follows:

首先要使用pinMode()函數來設置GPIO為INPUT模式

pinMode(GPIO, INPUT);

使用digitalRead()來讀取GPIO引腳的數值:

digitalRead(GPIO);

項目實例

為了向您展示如何使用數字輸入和數字輸出,我們將構建一個帶有按鈕和LED的簡單項目示例。 我們將讀取按鈕的狀態並相應地點亮LED,如下圖所示。

所需零件

以下是構建電路所需的零件清單:

  • ESP8266
  • 5毫米LED
  • 330歐姆電阻
  • 按鍵開關
  • 10k歐姆電阻
  • 面包板
  • 導線若干

原理圖

我們需要組裝一個帶有LED和按鈕的電路。 我們將把LED連接到GPIO 5(D1),將按鈕連接到GPIO 4(D2)。

image-20210205214512687

代碼



// 設置數字引腳
//Arduino IDE與ESP8266配合使用時,4對應GPIO 4,而5對應GPIO 5。
const int buttonPin = 4;     // 開關的數字引腳針腳號
const int ledPin =  5;       // LED的數字引腳針腳號

// 用於存儲按鈕狀態的變量
int buttonState = 0;

void setup() {
  // 將按鈕引腳初始化為輸入
  pinMode(buttonPin, INPUT);
  // 將LED引腳初始化為輸出
  pinMode(ledPin, OUTPUT);
}

void loop() {
  // 讀取按鈕值的狀態
  buttonState = digitalRead(buttonPin);
  // 檢查按鈕是否按下。
  //如果是,按鈕狀態為高
  if (buttonState == HIGH) {
    // 點亮LED
    digitalWrite(ledPin, HIGH);
  } else {
    //關閉LED
    digitalWrite(ledPin, LOW);
  }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM