Mengenal Bahasa Pemrograman Arduino #1

Apakah anda tau apa hal yang paling sulit ketika kita ingin belajar pemrograman arduino ? jawabannya adalah bagaimana caranya untuk memprogram arduino. tentunya kalian akan merasa kesulitan pada saat membuat sebuah program arduino jika kita tidak tau harus memulai dari mana untuk bisa memprogram arduino. 

Pada kesempatan kali ini, saya akan menulis artikel sesuai dengan judulnya yaitu mengenal bahasa pemrograman arduino. tentu kita tidak akan mengerti jika kita tidak tau dasar-dasar apa saja yang harus disiapkan untuk memulai program arduino. berikut tahapan yang harus kalian ketahui :

1. Apa itu pemrograman arduino
Pemrograman arduino yaitu menggunakan bahasa C sama seperti CVAVR yaitu menggunakan sekumpulan perintah atau instruksi berbentuk kode-kode huruf, angka, simbol, kata atau kalimat yang dimasukkan (diupload) kedalam rangkaian elektronika pengontrol/pengendali agar berfungsi sesuai perencanaan dan tujuan dari alat tersebut dibuat/dirangkai. kode-kode bahasa tersebut disebut syntax.
Pada mikrokontroler arduino, sekumpulan kode-kode syntax bahasa pemrograman yang ditulis dan diisikan tersebut disebut dengan istilah sketch. Selain menggunakan beberapa simbol, huruf, dan angka, instruksi/perintah-perintah yang ditulis berasal dari serapan kata berbahasa inggris.

2. Struktur bahasa pemrograman arduino
Sekumpulan instruksi/perintah yang ditulis mulai dari baris pertama hingga terakhir merupakan serangkaian perintah yang tidak dapat terpisahkan dan merupakan serangkaian perintah yang tidak dapat terpisahkan dan merupakan deskripsi dari diagram aliran yang direncanakan si programer.

void setup() {
  // put your setup code here, to run once:

}
maksudnya sekumpulan perintah-perintah yang ada di dalam kurung kurawal dieksekusi/ dijalankan/ dibaca dari baris pertama hingga akhir sebanyak 1 kali saja. berarti pada void setup semua kode didalam kurung kurawal akan dijalankan hanya satu kali ketika program Arduino dijalankan untuk pertama kalinya.


void loop() {
  // put your main code here, to run repeatedly:

}
maksudnya sekumpulan perintah-perintah yang ada didalam kurung kurawal dieksekusi/dijalankan/ dibaca dari garis pertama hingga akhir terus menerus hingga arduino dimatikan sumber listriknya/adaptornya dan fungsi ini akan dijalankan setelah setup selesai. setelah dijalankan fungsi ini akan dijalankan sekali lagi, ketika selesai akan terus dijalankan berulang-ulang (loop).

contoh sketch
void setup() {
  // put your setup code here, to run once:
pinMode(13,OUTPUT);
}

void loop() {
  // put your main code here, to run repeatedly:
digitalWrite(13, HIGH);
}

3. Variabel
Variabel adalah ekspresi yang digunakan untuk mewakili suatu nilai yang digunakan dalam program. Dalam keseluruhan sketch program yang ditulis pasti akan dibutuhkan suatu variabel yang harus diinisialisasi dan dideklarasikan diawal sebelum variabel itu digunakan dalam perhitungan atau proses selanjutnya :

int x = 0;

Variabel "x" dengan nilai awal 0 dan tipe data integer. variabel terdiri dari dua jenis  : 
  1. variabel global = setup() atau sebelumnya pada bagian inisialisasi
  2. variabel lokal = yang menambahkan data variabel di fungsi loop

4. Tipe Data
Setiapvariabel yang diinisialisasi dan dideklarasikan juga harus ditentukan diawal baris perintah jenis/tipe datanya apa saja, misalnya :

  1. int (integer) , mewakili nilai angka -32768 s.d 32767
  2. long , mewakili angka 2.174.483.648 s.d 2.147.483.647
  3. char (character) , menyimpan 1 karakter dalam kode ASCII
  4. byte = mewakili angka desimal 0 s.d 255
  5. unsign int , mewakili nilai angka 0 s.d 65535
  6. unsign long , mewakili angka 0 s.d 4.294.967.295 
  7. string , digunakan untuk menyimpan informasi/data berbentuk teks yang akan ditampilkan pada layar LCD
  8. aray , adalah sekumpulan variabel yang bertipe sama, misalkan ingin menginisialisasikan langsung bebesapa pin diantaranya 4,5,6,7 maka gunakan perintah array: int pin[]={4,5,6,7} 
  9. boolean , Variabel yang menyimpan nilai TRUE (benar) dan FALSE (salah)
  10. float , digunakan untuk menampung data bertipe desimal (floating point) sebesar 4 byte dengan rentang nilai -3.4028235E+38 sampai 3.4028235E+38

5. Penggunaan Operator Matematika
Operasi Aritmetika adalah operasi yang dilakukan pada data bertipe numerik

Operator Fungsi
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
% Operator pembagian yang menghasilkan keluaran berupa sisa hasil
bagai, sebagai contoh 10%3 maka menghasilkan nilai 1

6. Compound Assignment
Compound assignment merupakan salah satu teknik kombinasi operator aritmetika dengan variabel, yang sering diterapkan pada sistem perulangan. contohnya adalah

  • z++; // memiliki kesamaan operasi z = z + 1
  • z--; // memiliki kesamaan operasi z = z - 1
  • z-=a; // memiliki kesamaan operasi z = z - a
  • z+=a; // memiliki kesamaan operasi z = z + a
  • z*=a; // memiliki kesamaan operasi z = z * a
  • z/=a; // memiliki kesamaan operasi z = z / a

7. Operasi Perbandingan
operasi perbandingan merupakan operasi yang dilakukan untuk membandingkan sebuah logika atau dilakukan untuk membandingkan sebuah logika atau beberapa logika yang keluarannya adalah tipe data Boolean.

Operator Fungsi
== Sama dengan
!= Tidak sama dengan
< Lebih kecil dari
> Lebih besar dari
<= Lebih kecil sama dengan
>= Lebih besar sama dengan

8. Operasi Logika
Operasi logika merupakan operasi yang dilakukan untuk membandingkan dua atau lebih ekspresi. keluaran yang dihasilkan dapat bernilai true atau false. dalam arduino , ada tiga jenis operator logika, antara lain sebagai berikut.

  1. &&
  2. operator AND akan bernilai true jika kedua operand-nya bernilai true.
  3. ||
  4. Operator OR akan bernilai true jika salah satu operand-nya bernilai true
  5. !
  6. operator NOT akan menghasilkan kebalikan dari nilai inputan-nya
9. Operasi seleksi
Dalam pemrograman arduino, dikenal dengan kondep operator seleksi menggunakan if...then sama seperti bahasa pemrograman yang lain.

  1. Seleksi satu kondisi
  2. Jikasebuah kondisi menggunakan operasi logika menghasilkan nilai true, baris kode program yang berada di bagian dalam kurung kurawal {...} akan dieksekusi. namun jika bernilai false, akan diabaikan.Seleksi satu kondisi if...then menggunakan format sebagai berikut.
    if(kondisi)
    {
    //Baris kode program

    }

  3. Seleksi banyak kondisi
  4. Jika kondisi 1 bernilai true, akan mengerjakan "baris kode program ke-1". Namun jika bernilai false, seleksi akan dilanjutkan ke operasi lohikan kondisi 2. Jika bernilai true, program akan mengerjakan "baris kode program ke-2". Namun jika bernilai false, akan mengerjakan "baris kode program ke-n". susunan if...then...else dapat dilihat sebagai berikut.
    if(kondisi)
    {
    //Baris kode program ke-1

    }
    else if(kondisi)
    {
    //Baris kode program ke-2

    }
    else (kondisi)
    {
    //Baris kode program ke-n

    }

  5. Seleksi bersarang
  6. Seleksi bersarang merupakan bentuk seleksi di dalam seleksi. Artinya di dalam percabangan terdapat cabang lagi, berikut formatnya.
    if(kondisi)
    {
    if(kondisi)
    {
    // Baris kode program if di dalam if
    }
    }

10. Operasi pengulangan 
  1. Perulangan dengan for
  2. Operasi perulangan dengan for dilakukan secara terbatas dengan nilai awalan dan maksimal banyaknya pengulangan yang telah ditentukan. penulisan struktur perulangan for adalah sebagai berikut.
    for (inisialisasi; syarat perulangan; nilai perubah)
    {
        //Baris kode program
    }

    Sebagai contoh:
    for (i=0; i<255; i++)
    {
        analogWrite(pwmPin, i);
    }

  3. Perulangan dengan while
  4. Perulangan while akan terjadi selama ekspresi (kondisi) bernilai true. Format penulisan perulangan while adalah sebagai berikut
    While (Kondisi)
    {
        //Baris kode program
    }
  5. Perulangan dengan do...while
  6. Perulangan do...while minimal terjadi satu kali, karena pada awal looping, program tidak memeriksa nilai kondisi benar atau salah. Perulangan akan terus berlangsung selama kondisi dalam while bernilai benar. format penulisannya adalah.
    do
    {
        //Baris kode program
    }
    while (kondisi)
Demikian dari saya semoga bisa membantu sahabat drobotik dalam memahami pemrograman arduino.


7 Responses to "Mengenal Bahasa Pemrograman Arduino #1"

  1. tulisannya jadi bahan diskysi saya dgn anak sy yg duduk di bangku kelas 8 dn 9 pa Danu...thanks

    ReplyDelete
  2. Waduh ..pusing juga Mr.Dan, tapi sy suka IT

    ReplyDelete
  3. Sangat membantu dan bahasanya juga mudah di mengerti. terimakasih pak

    ReplyDelete
  4. Materi'y lengkap, tapi dikemas dengan bahasa yang gampang dimengerti jadi terlihat mudah. Sangat membantu terutama untuk orang awam ... Keren

    ReplyDelete

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel