digital input dan output pada ESP32
Daftar Isi Artikel
Pada materi kali ini saya akan membahas bagaimana cara membaca input digital (seperti tombol switch) serta cara membaca digital output ( LED) di ESP32.
Sebenarnya untuk membaca input dan ouput digital ini sangat mudah, ketika anda sudah pernah membuat program di arduino atau ESP8266.berikut ini adalah syntax yang bisa digunakan.
digitalWrite()
perintah ini digunakan untuk menuliskan output digital di ESP32 nilai dari perintah ini bisa berupa nilai HIGH atau LOW.
digitalWrite(GPIO,STATE)
GPIO adalah PIN nomor berapa pada ESP32 yang akan digunakan sebagai ouput digital dan STATE disini adalah nilai dari ouputnya bisa HIGH atau LOW.
digitalRead()
Perintah diatas digunakan untuk membaca input digital yang masuk di ESP32.dibawah ini adalah syntax yang bisa digunakan.
digitalRead(GPIO)
GPIO pada syntax diatas bisa diisi dengan PIN digital nomor berapa yang akan dihubungkan ke device inputnya
Contoh Program
mari kita coba membuat program sederhana ESP32 melalui Sofware arduino.pada contoh kali ini kita akan membaca push button kemudian outputnya menggunakan LED.Dibawah ini skema dari rangkaiannya.
Code Program
——————————————————————————————————————–
// set pin numbers
const int buttonPin = 4; // the number of the pushbutton pin
const int ledPin = 16; // the number of the LED pin
// variable for storing the pushbutton status
int buttonState = 0;
void setup() {
Serial.begin(115200);
// initialize the pushbutton pin as an input
pinMode(buttonPin, INPUT);
// initialize the LED pin as an output
pinMode(ledPin, OUTPUT);
}
void loop() {
// read the state of the pushbutton value
buttonState = digitalRead(buttonPin);
Serial.println(buttonState);
// check if the pushbutton is pressed.
// if it is, the buttonState is HIGH
if (buttonState == HIGH) {
// turn LED on
digitalWrite(ledPin, HIGH);
} else {
// turn LED off
digitalWrite(ledPin, LOW);
}
}
——————————————————————————————————————–
ok kita bahas code program diatas lebih detil lagi.yang pertama adalah tentang syntax program dibawah ini
const int buttonPin = 4; // the number of the pushbutton pin
const int ledPin = 16; // the number of the LED pin
kalau dilihat dari penggalan program diatas maka pushbutton dibubuhkan ke pin 4 dan LED dihubungkan ke pin nomor 16.
langkah selanjutnya adalah kita akan membuat deklarasi dari suatu variabel dari pusbbutton
int buttonState = 0;
setelah deklarasi variabel seperti diatas , kemudian kita masuk dimain programnya yang ditandai dengan setup().dimain program ini kita akan melakukan inisialisasi pushbutton sebagai input dengan led sebagai ouput dengan perintah pinMode().dibawah ini adalah detail syntaxnya
// initialize the pushbutton pin as an input
pinMode(buttonPin, INPUT);
// initialize the LED pin as an output
pinMode(ledPin, OUTPUT);
Kemudian perintah selanjutnya ada loop() fungsi ini digunakan untuk membaca kondisi pusbutton dan menset nilai pusbutton tadi ke LED.dibawah ini adalah syntax detilnya
buttonState = digitalRead(buttonPin);
Kemudian selanjutnya ada perintah IF STATEMENT dimana fungsinya untuk memastikan pushbuttonnya bernilai HIGH.jika kondisinya benar maka LED akan menyala.syntaxnya seperti dibawah ini
if (buttonState == HIGH) {
// turn LED on
digitalWrite(ledPin, HIGH);
tetapi jika nilai dari pushbuttonnya tidak high, maka ouputnya (LED) tidak akan menyala atau bernilai LOW.syntaxnya seperti dibawah ini.
else {
// turn LED off
digitalWrite(ledPin, LOW);
}
Upload program ke Sketch
sebelum kita klik tombol upload yang ada di sofware arduino, langkah pertama adalah kita pastikan dulu kalau informasi board sudah sesuai dengan ESP32 yang kita gunakan,Kemudian pastikan juga port yang tersambung ke board ESP32 sudah sesuai.
Cara ngeceknya bisa melalui TOOL=>Board atau tampilannya seperti pada gambar dibawah ini.
kemudian tekan tombol upload
tunggu hingga pesan done uploading muncul
setelah muncul pesan seperti diatas, maka anda sudah bisa mencoba project yang sudah kita buat diatas tadi
demikian tutorial digital input output pada ESP32.silahkan KLIK tombol dibawah untuk membaca materi selanjutnya tentang Membuat PWM (Pulse Width Modulation) dengan ESP32