Apa itu "Sketch" Arduino?
|
Program Arduino Blink |
Setelah pada pembahasan-pembahasan sebelumnya diblog
saya (http://fungkynotes.blogspot.com) membahas tentang Arduino dari sisi Hardware hingga software Arduino IDE yang digunakan dalam membuat program
Arduino, kali ini akan dibahas secara umum tentang bahasa pemprograman Arduino
yang biasa disebut “Sketch”. Code atau program Arduino biasa disebut “sketch”
dan dibuat menggunakan bahasa pemrograman C, dimana bahasa pemprograman C
merupakan bahasa pemprograman yang sudah terstruktur rapi dan terarah.
Dalam pembahasan para programmer (mungkin tidak semua)
bahasa C merupakan bahasa pemprograman yang mudah, gampang, dan masih banyak
kata perumpamaan lainnya. Jika dibanding jaman bahasa pemprograman dulu harus
pakai Assembler dan PALASM atau lainnya untuk membuat semuah sistem program
mikrokontroler. Dengan menggunakan bahasa C, hanya belajar sebentar saja kita
akan langsung dapat memahaminya.
Namun
dengan CATATAN!!, seorang programmer
yang menggunakan bahasa C harus juga MEMAHAMI (BUKAN SEKEDAR TAHUisi)
tentang struktur dasar dari konsep bahasa C mulai dari format penulisan program,
variable-variable yang digunakan hingga fungsi-fungsi dalam bahasa C dan masih
banyak lainnya. Program atau sketch dalam pemprograman Arduino merupakan bentuk
lebih sederhana dari bahasa C, hal ini dikarenakan struktur program Arduino
sudah terbantu dengan mekanisme Library yang berarti kita hanya memanggil
sebuah “Header” atau intruksi yang akan menjalankan sebuah struktur program
utuh yang terdapat dalam sebuah library.
Arduino sangat mempermudah seseorang dalam belajar
membangun sistem berbasis mikrokontroler. Misalkan saja program atau sketch sudah
selesai ditulis di Arduino IDE maka program tersebut bisa langsung dicompile
dan diupload ke Arduino Board menggunakan sambungan USB yang telah terintegrasi
dengan Arduino Board. Tidak perlu lagi repot-repot ketika ingin memprogram
device atau mikrokontroler seperti bahasa Assembler dan bahasa-bahasa
pemprograman pada jaman dahulu yang membutuhkan alat tambahan (downloader) untuk dapat mengupload
program yang dibuat ke mikrokontroler seperti alat tambahan (downloader) USB-ASP, AVR-ISP, DT-HiQ
Programmer, DLL.
|
Gambar 1. Downloader USB-ASP (http://yujum.com) |
- Arduino
“Sketch”
Pemprogram Arduino secara sederhana dapat dijabarkan atau
dikelompokkan menjadi 3 blok utama yaitu sebagai berikut:
- Header
- Setup
- Loop
Tentu saja 3 blok utama diatas merupakan bentuk dasar
dari pemprograman Arduino, untuk pengembangan program yang lebih kompleks akan
ada penambahan-penambahan blok-blok lain berupa fungsi-fungsi pendukung. Tetapi
dalam pembahasan secara umum kali ini kita fokus pada ketiga blok utama sebagai
dasar pembentukan bahasa pemprograman Arduino.
- Header
Pada bagian ini biasanya dituliskan definisi-definisi atau
fungsi-fungsi penting yang akan digunakan dalam program yang dirancang,
misalnya penggunaan library dan pendefinisian variable. Bagian Code atau
program dalam blok ini dijalankan hanya sekali pada waktu compile. Berikut ini
adalah contoh potongan code untuk mendeklarasikan variable led (integer) dan
sekaligus di isi dengan angka 13 sebagai alamat output.
- Setup
Di sinilah awal program Arduino berjalan atau diproses,
yaitu di saat awal atau ketika saat tegangan Arduino board dinyalakan. Biasanya
di blok ini diisi penentuan atau deklarasi apakah suatu pin digunakan sebagai
input atau output, menggunakan perintah “pinMode”. Selain pendeklarasian suatu
pin, Initialisasi variable juga bisa dilakukan di blok ini seperti pada contoh
berikut:
// the setup
routine runs once when you press reset:
void setup() { //
initialize the digital pin as an output.
pinMode(led, OUTPUT);
}
|
Keterangan:
- OUTPUT adalah suatu makro atau deklarasi
yang sudah didefinisikan Arduino yang berarti = 1. Jadi perintah di atas
sama dengan pinMode(led, 1);
Suatu pin bisa difungsikan sebagai OUTPUT atau INPUT.
JIka difungsikan sebagai output, dia siap mengirimkan arus listrik (maksimum
100 mA) kepada beban yang disambungkannya. Jika difungsikan sebagai INPUT, pin
tersebut memiliki impedance yang tinggi dan siap menerima arus yang dikirimkan
kepadanya.
- Loop
Blok ini akan dieksekusi secara terus menerus. Apabila
program sudah sampai akhir blok, maka akan dilanjutkan dengan mengulang
eksekusi dari awal blok. Program akan berhenti apabila tombol power Arduino di
matikan. Di sinilah fungsi utama program Arduino kita berada.
void loop() {
digitalWrite(led, HIGH); // nyalakan LED
delay(1000); // tunggu 1000 milidetik
digitalWrite(led, LOW); // matikan LED
delay(1000); // tunggu 1000 milidetik
}
|
Perintah digitalWrite(pinNumber,nilai) akan memerintahkan
arduino untuk menyalakan atau mematikan tegangan di pinNumber tergantung
nilainya. Jadi perintah di atas digitalWrite(led,HIGH) akan membuat pin nomor
13 (karena di header dideklarasi led = 13) memiliki tegangan = 5V (HIGH). Hanya
ada dua kemungkinan nilai digitalWrite yaitu HIGH atau LOW atau secara digital sebetulnya
adalah bernilai integer 1 atau 0.
Kalau sudah dibuat program diatas, selanjutnya kita ambil
kabel USB yang diikutsertakan pada saat membeli Arduino, pasangkan ke komputer
dan board arduino, dan upload programnya. Setelah proses upload selesai, maka
lampu LED yg ada di Arduino board kita akan kelap-kelip (Blink) seperti program
Blink yang digunakan. Selain blok setup() dan loop() yang telah dibahas di atas,
kita bisa mendefinisikan sendiri atau membuat sendiri sebuah blok fungsi sesuai
kebutuhan. Pembahasan blok fungsi akan dibahas secara umum pada lain waktu.
Demikian pengenalan singkat tentang “Apa Itu “Sketch”
Arduino?”. Untuk selanjutnya, kita akan mengulas tuntas mengenai “Membahas Lebih
Rinci Pemprograman Dasar Arduino” agar dapat mengetahui lebih dalam pengertian
dan maksud dari sebuah intruksi dan struktur dalam memprogram Arduino tersebut
sehingga mempermudah dalam proses membuat programnya.
Buat yang ingin mempelajari Arduino dan lebih mengenal
Arduino silakan follow akun Google+ atau membaca
pembahasan sebelum-sebelumnya diblog http://fungkynotes.blogspot.co.id
dan jangan lupa subscribe channel youtube kami
(fungky king) https://www.youtube.com/channel/UCWbN7TqlN68FxeFY7uCNhkA
untuk melihat hasil rancangan alat-alat yang kami buat. Kami juga menerima
pembuatan alat-alat elektronika baik untuk penelitian ataupun alat untuk syarat
kelulusan.
Demikian pembahasan singkat yang dapat dibahas, mohon
maaf jika terdapat kesalahan dalam penulisan semua ini semata-mata hanya opini
pribadi berdasarkan pengalaman. Jika ada kekurangan dan tambahan dari materi
pembahasan yang dibahas silahkan dapat teman-teman sertakan pada kolom komentar
tambahan materi yang ingin disampaikan, sampaikan pertanyaan dan isi kolom
komentar dengan bijak.
Terima Kasih,
Salam Otomatisasi
Fungkyking
http://fungkynotes.blogspot.co.id
Kata Kunci / Keywords: ATMEGA, Arduino, Arduino IDE, Arduino UNO, Bahasa C,
fungkynotes.blogspot.co.id, fungky corporation, fungky king, microcontroller,
otomatis, pemprograman, plc, NodeMCU, ESP8266, Internet of Things (IoT), Wi-Fi
Referensi / Reference: