Membaca Nilai GPIO pada ESP32 tanpa fungsi digitalRead()

Berikut ini akan ditujukkan cara membaca Nilai GPIO pada ESP32 tanpa fungsi digitalRead(). Membaca GPIO dengan digitalRead() praktis secara programming, namun relatif lambat.

#include "soc/gpio_struct.h"  // Include the GPIO register definitions
//##include "soc/io_mux_reg.h"   // Include the IO_MUX register definitions
// Define the GPIO pin number
const int gpioPin = 18;
void setup() {
  Serial.begin(115200);
  pinMode(gpioPin, INPUT_PULLUP);  // Enable pull-up
}

void loop() {
  // Read the GPIO input register
  bool gpio18_state = (GPIO.in >> 18) & 0x01;
  Serial.print("GPIO 18 state: ");
  Serial.println(gpio18_state);
  delay(100);
}

Tinggalkan Balasan

Situs ini menggunakan Akismet untuk mengurangi spam. Pelajari bagaimana data komentar Anda diproses