範例六

使用擴充板上的按鈕

由於擴充的按鈕外部並無 pull high 電阻,請使用時,程式腳位需特別宣告成啟用 ESP32 內建的 pull high 電阻模式,範例如下:

// 範例六:

// 使用擴充板-左下方的按鈕來控制 ESP32 內建的 LED on/off

// 左下方按鈕: GPIO32, 右邊的按鈕 GPIO15 (需啟用內建上拉電阻)

// 需要的 library :

// FB : https://www.facebook.com/mason.chen.1420


const int buttonPin = 32; // 按鈕連接的pin 15,32

const int ledPin = 2; // ESP32 內建 LED pin


int buttonState = 0;


void setup() {

Serial.begin(115200);

pinMode(ledPin, OUTPUT);

pinMode(buttonPin,INPUT_PULLUP); // 啟用內建上拉電阻

// pinMode(buttonPin,INPUT); // 未知狀態,這樣會有問題

}


void loop() {

//讀取按鈕狀態

buttonState = digitalRead(buttonPin);

Serial.println(buttonState);

if (buttonState == LOW) {

//LED點亮

digitalWrite(ledPin, HIGH);

} else {

//LED熄滅

digitalWrite(ledPin, LOW);

}

}