Pemrograman Dasar Arduino


Arduino adalah mikrokontroller / pengendali mikro papan tunggal yang bersifat sumber terbuka dan menjadi salah satu proyek Open Source Hardware yang paling populer. Dirancang untuk memudahkan penggunaan elektronik dalam berbagai bidang. Perangkat kerasnya memiliki prosesor Atmel AVR

Pada Arduino harus memiliki Bare Minimum. Bare Minimum adalah koding yang harus minimal ada pada Arduino. Jadi jika void setup dan void loop tidak ada, maka koding akan error.

void setup() {

  // semua kode yang disini akan dibaca sekali oleh Arduino

}

void loop() {

  //semua kode yang ada disini akan dibaca

  //berulang kali (terus menerus) oleh Arduino

}


void setup

Semua kode program yang ada dalam void setup akan dibaca sekali oleh Arduino. Biasa isin berupa kode perintah untuk menentukan fungsi pada sebuah pin. 

Contoh :

pinMode(13, OUTPUT);  // menentukan pin 13 sebagai OUTPUT

pinMode(3, INPUT);    // menentukan pin 3 sebagai INPUT

Adapun untuk komunikasi antara Arduino dengan komputer, menggunakan:

Serial.begin(9600);  // untuk komunikasi Arduino dengan komputer


void loop

Semua kode program yang ada di void loop akan dibaca setelah void setup dan akan dibaca terus menerus oleh Arduino. Isinya berupa kode-kode perintah kepada pin INPUT dan OUTPUT pada Arduino. 

Contoh:

digitalWrite(13, HIGH);  //untuk memberikan 5V (nyala)  kepada pin 13.

digitalWrite(13, LOW);   //untuk memberikan 0V (mati) kepada pin 13.

analogWrite(3, 225);     //untuk memberikan nilai 225 (setara dengan 5V) kepada pin 3.

Adapun untuk menampilkan nilai pada sebuah sensor di Serial Monitor, bisa menggunakan :

Serial.print(namasensor); //menampilkan nilai sensor yang disimpan di variabel nama sensor

Untuk menampilkan teks, bis menggunakan:

Serial.print("Selamat Datang"); //menampilkan teks Selamat Datang pada Serial Monitor

Dan untuk membuka Serial Monitor pada Arduino, bisa dengan memilih menu Tools kemudian pilih Serial Monitor. Atau dengan menekan kombinasi CTRL+SHIFT+M di keyboard. Atau bisa juga dengan meng-klik ikon Kaca Pembesar di Arduino.



Alur Pemrograman Arduino :

Catatan atau keterangan pada program dan tidak akan dibaca oleh Arduino, dengan cara mengetikan // kemudian memberikan penjelasan pada fungsi code tersebut

void loop() {

// catatan pada baris ini tidak akan dibaca oleh program

}


Tapi pemakaian tanda // hanya berfungsi untuk catatan satu baris saja, jika ingin membuat catatan yang panjang yaitu berupa paragraf. Maka  ketikan /* */

Contoh:

void loop() {

/*  

penjelasan dari code atau program, 

dimana bisa per paragraf 

*/

}


Kurung Kurawal  : {}

Digunakan untuk menentukan awal dan akhir dari program. Karena seperti bahasa pemrograman pada umumnya, Arduino membaca mulai dari atas hingga kebawah.

void loop()

{

….program

….program

….program

}


Titil Koma ;

Setiap baris kode pada Arduino harus diakhiri dengan tanda ;

void setup(){

pinMode(13, OUTPUT);

}

void loop(){

digitalWrite(13, HIGH);

}


Variables 

Variabel adalah kode program yang digunakan untuk menyimpan suatu nilai pada sebuah nama. Yang biasa digunakan diantaranya adalah Integer, Long, Boolean, Float, Character.

  • int (integer) : Menyimpan data sebesar 2 bytes (16 bits).
  • long (long) : Menggunakan 4 bytes (32 bits).
  • boolean (boolean) : Menyimpan nila TRUE dan FALSE. 
  • float(float) : Digunakan pada nilai decimal. Memory yang digunakan 4 bytes (32 bits).
  • char(character) : Menyimpan character berdasarkan ASCII kode (contoh: ‘A’=65). 1 byte (8 bits).


Operator Matematika 

Digunakan untuk memanipulasi nilai dengan perhitungan matematika sederhana seperti: penjumlahan, pengurangan, sama dengan, dan sebagainya.

=      (sama dengan) (contoh  x=10*2 (x sekarang jadi 20))

%    (persentase) (contoh 12%10 (hasilnya yaitu 2))

+      (penambahan)

–       (pengurangan)

*       (perkalian)

/        (pembagian)


Operator Perbandingan

Digunakan untuk melakukan perbandingan secara logika.

== (sama dengan) contoh: 15 == 10 FALSE atau 15 == 15 TRUE

!=  (tidak sama dengan) contoh: 15 != 10 TRUE atau 15 != 15 FALSE

<   (lebih kecil dari) contoh: 15 < 10 FALSE  atau 12 < 14 TRUE

>   (lebih besar dari) contoh: 15 > 19 TRUE atau 15 > 10 FALSE


Struktur Pengendali 

Program yang digunakan untuk menentukan sebuah kondisi, dan jika kondisinya sudah terpenuhi maka akan melaksanakan perintah yang sudah ditentukan. Dan saat tidak memenuhi kondisinya juga ada perintah yang dilaksanakan oleh Arduino.

if(kondisi A)

{

Kode Perintah A

}

else if(kondisi B)

{

Kode Perintah B

}

else

{

Kode Perintah C

}

Pertama Arduino akan lihat Kondisi A. Jika terpenuhi, maka akan melaksanakan Kode Perintah A.

Tapi jika TIDAK, Arduino akan lihat Kondisi B. Jika terpenuhi, maka akan melaksanakan Kode Perintah B.

Tapi jika TIDAK juga, maka Arduino akan melaksanakan Kode Perintah C.

for(int i = 0; i < #repeats; i++)

{

Kode Perintah

}

Kode diatas digunakan peng-ulang-an kode atau nilai dalam beberapa kali. 


Kode Digital 

Digunakan untuk pemrograman yang menggunakan Pin Digital pada Arduino.

pinMode( pin, mode);

Kode diatas digunakan untuk seting mode pin. Pin adalah nomer pin yang akan digunakan, kalo kamu pake Arduino Uno, pin Digitalnya dari 0-13. dan mode sendiri bisa berupa INPUT atau OUTPUT.

Contoh:

pinMode(13, OUTPUT);    // artinya pin 13 digunakan sebagai OUTPUT

pinMode(7, INPUT);         // artinya pin 7 digunakan sebagai INPUT

Dan seperti yang sudah dijelaskan untuk kode pinMode itu ada didalam void setup.

digitalRead(pin);

Kode diatas digunakan pin INPUT, untuk membaca nilai sensor yang ada pada pin. Dan nilainya hanya terbatas pada 1 (TRUE), atau 0 (FALSE).

Contoh:

digitalRead(13);     // artinya kode akan membaca nilai sensor pada pin 13

Kode digitalRead dimasukan dalam void loop.

digitalWrite(pin, nilai);

Kode diatas digunakan untuk pin OUTPUT yang sudah diseting apakah akan diberikan HIGH (+5V), atau LOW (Ground).

Contoh:

digitalWrite(13, HIGH);    // artinya pin 13 kita diberi tegangan +5V

digitalWrite(13, LOW);    // artinya pin 13 kita diberi tegangan 0 / Ground

Dan untuk kode digitalWrite tentu saja kita masukan dalam void loop.

analogWrite(pin, nilai);

Meskipun Arduino adalah perangkat digital, tapi masih bisa menggunakan fungsi Analognya pada pin Digital Arduino. Tapi hanya beberapa pin saja, yang biasa disebut PWM (Pulse With Modulation). Pada Arduino Uno memiliki 6 pin PWM, yaitu: 3,5,6,9, 10, dan 11.

Dengan begini nilai yang dihasilkan menjadi bervariasi dari 0-225, itu setara dengan 0-5V.

Contoh:

analogWrite(3, 150);    // artinya pin 3 diberikan nilai sebesar 150

Dan untuk kode analogWrite juga dimasukan dalam void loop.


Kode Analog 

Kode analog ini digunakan ketika ingin menggunakan pin Analog pada Arduino. Untuk Arduino Uno pin Analog dari A0-A5. Dan karena ini pin Analog maka hanya bisa kita gunakan sebagai INPUT saja. Dan juga tidak perlu menulis pinMode pada void setup.

analogRead(pin);

Kode diatas digunakan untuk membaca nilai pada sensor Analog. Yaitu antara 0-1024.

Contoh:

analogRead(A0);     // artinya kode akan membaca nilai sensor pada pin AO.


Catatan: 

Pemrograman Arduino adalah Case Sensitive. penggunaan huruf kecil atau huruf besar sangat berpengaruh.