範例六
使用擴充板上的按鈕
由於擴充的按鈕外部並無 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);
}
}