Pernyataan Pemilihan pada Pemograman Arduino

Ada 2 macam pernyataan yang dapat digunakan untuk memilih suatu kondisi dalam proses pemograman arduino yaitu

1. pernyataan pemilihan dengan menggunakan if – else

2. pernyataan pemilihan dengan menggunakan switch – case

Kedua pernyataan ini sama-sama digunakan untuk memilih suatu percabangan dalam program. Bagaimana cara penggunaannya, akan dibahas berikut ini.

Pernyataan if – else

Format penulisan pernyataan if – else adalah sebagai berikut :

if (variabel dibandingkan)
{ pernyataan 1;}
else
{ pernyataan 2;}

Dengan menggunakan flowchart dapat digambar sebagai berikut

gambar nano 4

Gambar 1 flowchart untuk pernyataan if – else

Contoh pemograman dengan menggunakan if – else

int pininput = 1;
int pinoutput1 = 2;

void setup()
{
      pinMode(pininput,INPUT);
      pinMode(pinoutput1,OUTPUT);
}

void loop()
{
        if(pininput == 1)
          {digitalWrite(pinoutput1, HIGH);}
        else
          {digitalWrite(pinoutput1, LOW);}
}

Pernyataan if-else digunakan untuk membandingkan variabel dengan suatu kondisi logika. Bila variabel bernilai benar, maka pernyataan1 akan dieksekusi bila tidak (else) maka pernyataan2 yang akan dieksekusi. Pernyataan if dapat juga ditulis tanpa else. Bila demikian, maka if hanya akan menjalankan pernyataan1 jika nilai variabel yang dibandingkan benar.

Pernyataan switch – case

Format penulisan pernyataan switch – case  adalah sebagai berikut :

switch (variabel)
{
Case konstanta1:
	Pernyataan 1;
break;
case konstanta2:
	Pernyataan 2;
break;
case konstanta3:
	Pernyataan 3;
break;
case konstanta n:
	Pernyataan n;
break;
default:
	Pernyataan X;
break;
}

Dengan menggunakan flowchart dapat digambar sebagai berikut

gambar nano 5

Gambar 2 flowchart untuk pernyataan switch – case

 Contoh pemograman dengan menggunakan switch – case

int pininput = 1;
int pinoutput1 = 2;
int pinoutput2 = 3;
int pinoutput3 = 4;
int pinoutput4 = 5;

void setup()
{
	pinMode(pininput,INPUT);
	pinMode(pinoutput1,OUTPUT);
	pinMode(pinoutput2,OUTPUT);
	pinMode(pinoutput3,OUTPUT);
	pinMode(pinoutput4,OUTPUT);
}

void loop()
{
	switch (pininput)
	{case 1:
		digitalWrite(pinoutput1,HIGH);
	 break;
         case 2:
		digitalWrite(pinoutput2,HIGH);
	 break;
	 case 3:
		digitalWrite(pinoutput3,HIGH);
	 break;
	 default :
		digitalWrite(pinoutput4,HIGH);
	 break;}
}

Variabel adalah nilai yang akan dibandingkan dengan konstanta-konstanta atau dapat juga berupa ekspresi aritmatika. Konstanta 1 hingga konstanta ke n adalah nilai pembanding untuk variabel. Dalam pernyataan switch-case, konstanta tidak boleh ada yang sama atau berulang. Pernyataan 1 hingga pernyataan n adalah suatu pernyataan atau proses yang harus dikerjakan jika variabel sesuai dengan suatu konstanta. Pernyataan X adalah pernyataan yang dikerjakan bila tidak ada variabel yang sesuai dengan konstanta pembanding.

Switch – case digunakan untuk membandingkan suatu variabel dengan beberapa konstanta. Konstanta diawali dengan “case” dan setiap blok case diakhiri dengan “break”. Jika nilai variabel sama dengan suatu konstanta, maka pernyataan yang ada pada blok tersebut akan dieksekusi dan jika variabel tidak ada yang sama dengan konstanta – konstanta yang ada maka pernyataan pada blok “default” yang akan dieksekusi. Blok “default” adalah opsional artinya boleh ada boleh juga tidak.

Pada contoh program, pada mulanya program akan melakukan deklarasi yaitu :

int pininput = 1;
int pinoutput1 = 2;
int pinoutput2 = 3;
int pinoutput3 = 4;
int pinoutput4 = 5;

deklarasi ini menyatakan bahwa kata “pininput” identik dengan pin1 terminal arduino, sedangkan kata-kata “pinoutput1, pinoutput2, pinoutput3 dan pinoutput4” berturut-turut identik dengan pin2, pin3, pin4 dan pin5 terminal arduino.

Selanjutnya program melakukan pengaturan yaitu :

void setup()
{
	pinMode(pininput,INPUT);
	pinMode(pinoutput1,OUTPUT);
	pinMode(pinoutput2,OUTPUT);
	pinMode(pinoutput3,OUTPUT);
	pinMode(pinoutput4,OUTPUT);
}

Pada blok ini mikrokontroler akan mengatur “pininput” (pin1 arduino) sebagai pin input dan berturut-turut “pinoutput1” (pin2 arduino), “pinoutput2″ (pin3 arduino),” pinoutput3″ (pin4 arduino) dan “pinoutput4” (pin5 arduino) sebagai pin output.

Selanjutnya program utama yaitu :

void loop()
{
	switch (pininput)
	{case 1:
		digitalWrite(pinoutput1,HIGH);
	 break;
         case 2:
		digitalWrite(pinoutput2,HIGH);
	 break;
	 case 3:
		digitalWrite(pinoutput3,HIGH);
	 break;
	 default :
		digitalWrite(pinoutput4,HIGH);
	 break;}
}

Program utama ini akan berulang terus menerus. Perintah switch akan membandingkan variabel “pininput” dengan beberapa konstanta atau sama saja membandingkan data masukan pada pin1 arduino dengan beberapa konstanta. Jika “pininput” bernilai sama dengan 1 maka “pinoutput1” akan diperintahkan untuk bernilai tinggi (HIGH) atau memberikan tegangan 5V, jika “pininput” bernilai sama dengan 2, maka “pinoutput2” akan bernilai tinggi, jika “pininput” bernilai sama dengan 3 maka “pinoutput3” yang akan bernilai tinggi dan jika nilai “pininput” tidak ada yang sama dengan ketiga konstanta, maka perintah dalam blok “default” yang akan dijalankan yaitu “pinoutput4” yang akan bernilai tinggi. Perintah “break” akan mengulang program.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *