Fungsi Logika (If, For, Switch
Case dan While) - Bagian 5
Mempelajari Fungsi Logika (If,
For, Select Case dan While) pada ARDUINO IDE.
Baiklah
langsung saja yang kita pelajari kali ini yaitu:
- If;
- For;
- Switch Case;
- While.
If
If dalam bahasa indonesia artinya jika,
maka dalam bahasa pemrograman apapun sudah tidak asing penggunaan Logika If.
Dalam ARDUINO IDE, If digunakan untuk menentukan akibat dari
kondisi program yang berjalan pada suatu sistem Microcontroller. If biasanya
digunakan untuk menentukan kondisi setelah pembacaan input, analisa Serial,
serta kondisi-kondisi lain dalam program ARDUINO IDE. Contoh penulisan If
yaitu:
int analogSensorPin = A0; // penentuan tipe data sensor pada integer dan pin
sensor pada A0
int lenPin1 = 2; // penentuan tipe data LED pada integer dan pin LED pada pin 2
int ledPin2 = 3; // penentuan tipe data LED pada integer dan pin LED pada pin 3
int sensorValue = 0; // menetapkan nilai sensor pada nilai 0
void setup() {
pinMode(analogSensorPin, INPUT); // penetapan pin mode sensor pada mode INPUT
pinMode(ledPin1, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin2, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
}
void loop() {
sensorValue = analogRead(analogSensorPin); // membaca nilai analog dari analogSensorPin
if (sensorValue <= 200) {
digitalWrite(ledPin1, HIGH); // jika nilai sensor kurang dar 200 maka led 1 akan
menyala
}
}
Selain If
kita juga dapat menggunakan Else If dan Else untuk
membuat kondisi yang berjumlah dua atau lebih.
Else If
Else if digunakan apabila kita ingin membuat kondisi
yang berbeda dengan kondisi yang kita buat pada If, namun masih dalam Logika
dan akibat atau fungsi yang sama. Penggunaan Else If ditujukan untuk
mempermudah Mikrocontroler dalam pembacaan kondisi dan penerapan Logika dalam
program ARDUINO IDE. Contoh penulisan Else If yaitu:
int analogSensorPin = A0; // penentuan tipe data sensor pada integer dan pin
sensor pada A0
int lenPin1 = 2; // penentuan tipe data LED pada integer dan pin LED pada pin 2
int ledPin2 = 3; // penentuan tipe data LED pada integer dan pin LED pada pin 3
int sensorValue = 0; // menetapkan nilai sensor pada nilai 0
void setup() {
pinMode(analogSensorPin, INPUT); // penetapan pin mode sensor pada mode INPUT
pinMode(ledPin1, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin2, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
}
void loop() {
sensorValue = analogRead(analogSensorPin); // membaca nilai analog dari analogSensorPin
if (sensorValue <= 200) {
digitalWrite(ledPin1, HIGH); // jika nilai sensor kurang dar 200 maka led 1 akan
menyala
} else if (sensorValue >= 200) {
digitalWrite(ledPin2, HIGH); // jika(kondisi lain) nilai sensor lebih dari 200
maka led 2 menyala
}
}
Else
Else digunakan untuk membua
kondisi atau logika jika semua kondisi yang terdapat pada If ataupun Else If
tidak berjalan atau tidak sesuai dengan pernyataan ataupun pembacaan input yang
ditentukan. Contoh untuk penulisan Else yaitu:
int analogSensorPin = A0; // penentuan tipe data sensor pada integer dan pin
sensor pada A0
int lenPin1 = 2; // penentuan tipe data LED pada integer dan pin LED pada pin 2
int ledPin2 = 3; // penentuan tipe data LED pada integer dan pin LED pada pin 3
int sensorValue = 0; // menetapkan nilai sensor pada nilai 0
void setup() {
pinMode(analogSensorPin, INPUT); // penetapan pin mode sensor pada mode INPUT
pinMode(ledPin1, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin2, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
}
void loop() {
sensorValue = analogRead(analogSensorPin); // membaca nilai analog dari analogSensorPin
if (sensorValue <= 200) {
digitalWrite(ledPin1, HIGH); // jika nilai sensor kurang dar 200 maka led 1 akan
menyala
} else if (sensorValue >= 200) {
digitalWrite(ledPin2, HIGH); // jika(kondisi lain) nilai sensor lebih dari 200
maka led 2 menyala
} else {
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW); // jika tidak ada kondisi yang sesuai maka semua
led akan mati
}
}
For
For dalam bahasa indonesia artinya untuk,
maka dalam bahasa pemrograman apapun sudah tidak asing penggunaan Logika For.
Untuk penggunaan For pada pemrograman ARDUINO IDE yaitu memberikan kondisi untuk perulangan
waktu jeda ataupun menunggu ata membuat waktu jeda menjadi berlipat ganda atau
berulang ulang.
Penggunaan
For biasanya untuk mengubah Kondisi satu menjadi kondisi yang lainya dengan
memperbanyak waktu jeda. For juga dapat digunakan untuk menentukan jumlah
pembacaan Input pada sensor ataupun pembacaan Input lainya. Penggunaan ini
ditujukan untuk membatasi pembacaan input pada Sensor ataupun pembacaan Input
lainya. Contoh penulisan For yaitu:
int analogSensorPin = A0; // penentuan tipe data sensor pada integer dan pin
sensor pada A0
int lenPin1 = 2; // penentuan tipe data LED pada integer dan pin LED pada pin 2
int ledPin2 = 3; // penentuan tipe data LED pada integer dan pin LED pada pin 3
int sensorValue = 0; // menetapkan nilai sensor pada nilai 0
void setup() {
pinMode(analogSensorPin, INPUT); // penetapan pin mode sensor pada mode INPUT
pinMode(ledPin1, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin2, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
}
void loop() {
sensorValue = analogRead(analogSensorPin); // membaca nilai analog dari analogSensorPin
if (sensorValue <= 200) {
digitalWrite(ledPin1, HIGH); // jika nilai sensor kurang dar 200 maka led 1 akan
menyala
delay(500); // memberikan jeda 500ms
for (int i = 5; i > 0; i++) {
digitalWrite(ledPin1, LOW); // untuk waktu 5x500ms maka led 1 akan mati
}
}
}
Switch Case
Switch Case digunakan untuk menentukan
pilihan atau menyeleksi salah satu kondisi dari beberapa kondisi yang kita buat
dalam program. Switch Case berfungsi untuk memudahkan penjalanan perintah
program jika kondisi yang diperlukan cukup banyak. Contoh penulisan
Switch Case yaitu:
int pushButton1 = A0; // penentuan tipe data push button pada integer dan pin sensor pada A0
int pushButton2 = A1; // penentuan tipe data push button pada integer dan pin sensor pada A1
int pushButton3 = A2; // penentuan tipe data push button pada integer dan pin sensor pada A2
int pushButton4 = A3; // penentuan tipe data push button pada integer dan pin sensor pada A3
int pushButton5 = A4; // penentuan tipe data push button pada integer dan pin sensor pada A4
int lenPin1 = 2; // penentuan tipe data LED pada integer dan pin LED pada pin 2
int ledPin2 = 3; // penentuan tipe data LED pada integer dan pin LED pada pin 3
int ledPin3 = 4; // penentuan tipe data LED pada integer dan pin LED pada pin 4
int ledPin4 = 5; // penentuan tipe data LED pada integer dan pin LED pada pin 5
int ledPin5 = 6; // penentuan tipe data LED pada integer dan pin LED pada pin 6
int val = 0; // menetapkan nilai sensor pada nilai 0
void setup() {
pinMode(pushButton1, INPUT); // penetapan pin mode push button pada mode INPUT
pinMode(pushButton2, INPUT); // penetapan pin mode push button pada mode INPUT
pinMode(pushButton3, INPUT); // penetapan pin mode push button pada mode INPUT
pinMode(pushButton4, INPUT); // penetapan pin mode push button pada mode INPUT
pinMode(pushButton5, INPUT); // penetapan pin mode push button pada mode INPUT
pinMode(ledPin1, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin2, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin3, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin4, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin5, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
}
void loop() {
if (pushButton1 == HIGH) {
val = 1;
} else if (pushButton2 == HIGH) {
val = 2;
} else if (pushButton3 == HIGH) {
val = 3;
} else if (pushButton4 == HIGH) {
val = 4;
} else if (pushButton5 == HIGH) {
val = 5;
} else {
val = 0;
}
switch (val) {
case 0:
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
break;
case 1:
digitalWrite(ledPin1, HIGH);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
break;
case 2:
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, HIGH);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
break;
case 3:
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, HIGH);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, LOW);
break;
case 4:
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, HIGH);
digitalWrite(ledPin5, LOW);
break;
case 5:
digitalWrite(ledPin1, LOW);
digitalWrite(ledPin2, LOW);
digitalWrite(ledPin3, LOW);
digitalWrite(ledPin4, LOW);
digitalWrite(ledPin5, HIGH);
break;
}
}
While
Fungsi While digunakan
untuk membuat pernyataan atau perintah didalam kondisi namun berjalan secara
terus menerus sampai pernyataan atau perintah didalam kondisi bernilai sala (false). Contoh penulisan While yaitu:
int analogSensorPin = A0; // penentuan tipe data sensor pada integer dan pin
sensor pada A0
int lenPin1 = 2; // penentuan tipe data LED pada integer dan pin LED pada pin 2
int ledPin2 = 3; // penentuan tipe data LED pada integer dan pin LED pada pin 3
int sensorValue = 0; // menetapkan nilai sensor pada nilai 0
void setup() {
pinMode(analogSensorPin, INPUT); // penetapan pin mode sensor pada mode INPUT
pinMode(ledPin1, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
pinMode(ledPin2, OUTPUT); // penetapan pin mode LED pada mode OUTPUT
}
void loop() {
sensorValue = analogRead(analogSensorPin); // membaca nilai analog dari analogSensorPin
if (sensorValue <= 200) {
digitalWrite(ledPin1, HIGH); // jika nilai sensor kurang dar 200 maka led 1 akan
menyala
while (sensorValue >= 200) {
digitalWrite(ledPin1, LOW); // LED 1 akan mati
digitalWrite(ledPin2, HIGH); // LED 2 akan menyala
}
}
}
Baiklah mungkin hanya itu yang
kita pelajari untuk Fungsi Logika (If, For, Switch
Case dan While) pada Arduino untuk saat ini.
No comments:
Post a Comment