Mengenal Programming Arduino

Pendahuluan

Konten ini berfungsi sebagai referensi pemrograman untuk struktur dan sintaks dasar dari mikrokontroller arduino yang simpel dan mudah. Jadi jika anda disini untuk belajar memahami wanita, maka ketahuilah bahwa anda salah masuk website karena memahami wanita tidak semudah memahami pemrograman arduino. Konten ini dimaksudkan untuk referensi pemula sebagai dasar pembelajaran struktur pemrograman arduino, sehingga dalam konten ini tidak menyertakan contoh penggunaan bentuk program yang rumit dari array, komunikasi serial, maupun program yang dapat memahami kode dari gebetan kamu.

Dimulai dari dasar struktur bahasa C Arduino, konten kali ini akan menjelaskan sintaks yang paling umum digunakan serta mengilustrasikan penggunaannya dengan contoh contoh yang umum pula. Karena sesuatu yang tidak umum tapi spesial itu cukup kamu saja, jangan yang lain.

Struktur

Struktur dasar dari pemrograman arduino cukup simple dan berjalan dengan setidaknya dua bagian utama. Dua bagian utama ini, atau fungsi sebutannya, mengurung atau menyertakan block statement.

dimana fungsi setup() merupakan fungsi persiapan dan fungsi loop() merupakan fungsi eksekusinya. Kedua fungsi tersebut saling membutuhkan agar program dapat berjalan layaknya kedua pasangan yang saling membutuhkan agar dapat saling melengkapi ahaayyy.

Setup()

Fungsi Setup() akan mengikuti setiap deklarasi yang terletak pada awal program. Fungsi ini fungsi pertama yang dijalankan oleh program dan hanya akan berjalan sekali saja, karena fungsi setup() gamau mengulangi kesalahan yang sama, jadi dia memutuskan untuk jalan sekali aja.

Setup() dapat digunakan atau dimanfaatkan untuk menginisialisasi mode pin atau komunikasi serial. Fungsi ini juga harus di sertakan dalam program meskipun tidak ada statement apapun yang dijalankan. Contoh penggunaannya seperti berikut :

void setup()

{

pinMode(pin, OUTPUT);   //mengatur ‘pin’ sebagai output

}

Loop()

Setelah menjalankan fungsi setup(), fungsi loop() kemudian dijalankan dengan cara sesuai namanya (loop) yang berarti berulang. Fungsi ini akan terus menjalankan program atau statement yang di dalamnya secara berulang terus menerus sehingga memungkinkan suatu program untuk dapat berubah, merespon, dan mengontrol board arduino. Sayangnya di dunia nyata gebetan kamu ga bisa dikontrol sama fungsi loop() malah adanya kamu masuk loop friend zone. Contoh untuk program dalam fungsi loop() ini ialah sebagai berikut

void loop()

{

digitalWrite(pin, HIGH);  //menyalakan ‘pin’

delay(1000);   //berhenti selama satu detik

digitalWrite(pin, LOW); //mematikan ‘pin’

delay(1000);   //berhenti selama satu detik

}

Dengan contoh program diatas, jika dibayangkan cara kerjanya sesuai dengan fungsi loop() maka pin yang terdeklarasi akan mati nyala selama terus menerus dengan jeda waktu antar mati dan nyala selama satu detik.

Fungsi

Sebuah fungsi adalah blok kode (beberapa kode atau perintah) dalam suatu kelompok yang memiliki nama, dan ketika fungsi itu dipanggil, maka semua perintah atau kode yang ada didalamnya akan dijalankan. Ga kaya dia yang kalo kamu panggil selalu berpaling dari hadapanmu 🙁 Hal ini sama seperti fungsi dasar setup() dan loop() telah dibahas sebelumnya.

Fungsi buatan dapat diciptakan secara manual untuk menjalankan tugas khusus dan mengurangi acak acakan dalam suatu program. Fungsi di deklarasi dengan mendeklarasikan tipe fungsi terlebih dahulu. Tipe ini merupakan tipe nilai yang dikembalikan oleh fungsi tersebut seperti ‘int’ atau interger misalnya. Jika tidak ada nilai yang dikembalikan oleh fungsi tersebut maka tipe fungsi tersebut adalah void. Setelah tipe, deklarasikan nama fungsi yang ingin diberikan. Dan yang terakhir adanya parameter yang terletak diantara kurung () yang berfungsi sebagai nilai yang dibutuhkan untuk menjalankan fungsi tersebut. Berikut gambaran struktur fungsi

tipe namaFungsi (parameter)

{

}

Contoh pengaplikasian dari fungsi dapat di misalkan ketika ada fungsi dengan tipe integer bernama delayVar() digunakan untuk mengatur nilai delay yang didapat dari pembacaan potensiometer. Dalam perintah pertamanya, variabel sementara ‘v’ di deklarasikan. Variabel ‘v’ ini digunakan untuk menyimpan pembacaan analog dari potensio untuk kemudian dikembalikan nilainya untuk digunakan dalam delay. Program tersebut dituliskan sebagai berikut

int delayVar()

{

int v;

v = analogRead(pot)l

return v;

}

jadi ketika fungsi delayVar() dipanggil dalam fungsi utama void setup() misalnya

void setup()

{

delay(delayVar());

}

maka nilai dalam kurung delay() akan menyesuaikan nilai pada variabel ‘v’ yang dikembalikan oleh fungsi delayVar(). Cukup mudah dipahami bukan? jika tidak maka anda tidak memiliki harapan untuk memahami dia sedangkan kamu tidak bisa memahami cara kerja fungsi.

Kurung Kurawal {}

Kurung kurawal mendefinisikan awal dan akhir dari suatu fungsi dan blok statements seperti pada fungsi loop() maupun for atau if.

void loop()

{     //awal dari fungsi loop

}    //akhir dari fungsi loop

Sebuah kurung pembuka ‘{‘ harus di ikuti oleh kurung penutup ‘}’ untuk menghindari error yang terjadi pada program. Fitur pada arduino IDE dapat mengecek hubungan antar kurung untuk memastikan keseimbangan jumlah antara kurung pembuka dengan kurung penutup, namun tidak bisa digunakan untuk memastikan hubungan kamu dengannya sedang baik-baik saja atau tidak.

Semicolon ;

Sebuah semicolon harus digunakan untuk mengakhiri sebuah perintah atau memisahkan element dalam suatu program.

int x = 13;

Catatan : Mengabaikan semicolon akan mengakibatkan error pada compiler serta tidak dihiraukannya dirimu olehnya. Maka ingatlah selalu untuk menggunakan semicolon pada tiap akhir perintah.

Variabel

Variabel adalah cara untuk memberi nama serta menyimpan sebuah nilai untuk penggunaan lebih lanjut dalam sebuah program. Sebuah variabel dapat menyesuaikan nama (berubah ubah) tanpa harus merubah nilai yang ada di dalamnya. Sebuah variabel perlu di deklarasikan terlebih dahulu dengan cara memberikan tipe data sebelum nama variabel tersebut;

int  input;   //mendeklarasikan input sebagai variabel integer

input = 1000;   //memberi nilai 1000 pada variabel input

int output = 2000;   //mendeklarasikan sekaligus memberi nilai pada variabel output

Variabel akan sangat berguna dalam banyak hal. Contohnya variabel dapat digunakan sebagai parameter nilai dalam perintah perulangan if, for, while, atau dapat kita gunakan nilainya secara langsung. Sebagai contoh program ialah ketika sebuah variabel dijadikan parameter penentuan delay dalam perintah if.

if (inputVar < 100)   //jika nilai variabel kurang dari 100

{

nilaiDelay = 100;

}

else if (inputVar > 100)   //jika nilai variabel lebih dari 100

{

nilaiDelay =200;

}

delay(nilaiDelay);

Program diatas menunjukkan bahwa nilai dari variabel inputVar akan memengaruhi nilai delay untuk program tersebut. Begitulah contoh mudahnya.

Aritmatik

Operator aritmatik terdiri dari penjumlahan, pengurangan, pengalian, dan pembagian. Mereka akan mengembalikan hasil dari kedua operan yang diproses dengan operator aritmatik.

y = y + 3;

x = x – 7;

i = j * 6;

r = r / 5;

Hasil dari operasi tersebut tergantung pula dari tipe data yang digunakan, tidak tergantung dengan cowok idaman kamu. Contohnya, ketika dua variabel integer dengan nilai 9 dan 4 kemdian keduanya dibagi, 9 / 4 hasilnya 2 meskipun seharusnya 2.25. Namun karena 9 dan 4 memiliki tipe data integer, mereka tidak dapat menggunakan bilangan dibelakang koma (bilangan bulat).

Operator aritmatik juga dapat dituliskan sebagai berikut dalam penggunaannya

x ++   //sama dengan x = x + 1

x —   //sama dengan x = x – 1

x += y   //sama dengan x = x + y

x -= y   //sama dengan x = x – y

x *= y   //sama dengan x = x * y

x /= y   //sama dengan x = x / y

Selain operator aritmatik, ada juga yang dinamakan operator pembanding dimana operator ini berfungsi untuk membandingkan dua nilai dari variabel yan berbeda. Hal ini biasanya digunakan untuk menanyakan sebuah kondisi dalam perintah if.

x == y   //x sama dengan y

x != y   // x tidak sama dengan y

x < y   //x kurang dari y

x > y   //x lebih dari y

x <= y   //x kurang dari sama dengan y

x >= y   //x lebih dari sama dengan y

 

Tags: No tags

Leave a Comment