PENGENALAN ARDUINO IDE DAN STRUKTUR PROGRAM ARDUINO
1.1 Ardunio IDE
IDE itu merupakan kependekan dari Integrated Developtment Enviroenment, atau secara bahasa mudahnya merupakan lingkungan terintegrasi yang digunakan untuk melakukan pengembangan. Disebut sebagai lingkungan karena melalui software inilah Arduino dilakukan pemrograman untuk melakukan fungsi-fungsi yang dibenamkan melalui sintaks pemrograman. Arduino menggunakan bahasa pemrograman sendiri yang menyerupai bahasa C. Bahasa pemrograman Arduino (Sketch) sudah dilakukan perubahan untuk memudahkan pemula dalam melakukan pemrograman dari bahasa aslinya. Sebelum dijual ke pasaran, IC mikrokontroler Arduino telah ditanamkan suatu program bernama Bootlader yang berfungsi sebagai penengah antara compiler Arduino dengan mikrokontroler. Arduino IDE dibuat dari bahasa pemrograman JAVA. Arduino IDE juga dilengkapi dengan library C/C++ yang biasa disebut Wiring yang membuat operasi input dan output menjadi lebih mudah. Arduino IDE ini dikembangkan dari software Processing yang dirombak menjadi Arduino IDE khusus untuk pemrograman dengan Arduino.
1.2 Fitur-Fitur Arduino IDE
Adapun fitur-fitur yang terdapat
pada software arduino IDE yakni sebagai berikut.
1.
Penulisan Sketch
Program
yang ditulis dengan menggunaan Arduino Software (IDE) disebut sebagai sketch.
Sketch ditulis dalam suatu editor teks dan disimpan dalam file dengan ekstensi
.ino. Teks editor pada Arduino Software memiliki fitur” seperti cutting/paste
dan seraching/replacing sehingga memudahkan kamu dalam menulis kode program.
Pada Software Arduino IDE, terdapat semacam message box berwarna hitam yang
berfungsi menampilkan status, seperti pesan error, compile, dan upload program.
Di bagian bawah paling kanan Sotware Arduino IDE, menunjukan board yang
terkonfigurasi beserta COM Ports yang digunakan.
Gambar diatas merupakan tampilan
dari Software Arduino IDE.
|
Nama |
Penjelasan |
|
Verify |
Berfungsi untuk melakukan checking kode yang kamu buat apakah sudah sesuai dengan kaidah pemrograman yang ada atau belum |
|
Upload |
Berfungsi untuk melakukan kompilasi program atau kode yang kamu buat menjadi bahsa yang dapat dipahami oleh mesih alias si Arduino. |
|
New |
Berfungsi untuk membuat Sketch baru |
|
Open |
Berfungsi untuk membuka sketch yang pernah kamu buat dan membuka kembali untuk dilakukan editing atau sekedar upload ulang ke Arduino. |
|
Save |
Berfungsi untuk menyimpan Sketch yang telah kamu buat. |
|
Serial Monitor |
Berfungsi untuk membuka serial monitor. Serial monitor disini merupakan jendela yang menampilkan data apa saja yang dikirimkan atau dipertukarkan antara arduino dengan sketch pada port serialnya. Serial Monitor ini sangat berguna sekali ketika kamu ingin membuat program atau melakukan debugging tanpa menggunakan LCD pada Arduino. Serial monitor ini dapat digunakan untuk menampilkan nilai proses, nilai pembacaan, bahkan pesan error. |
2.
File
·
New, berfungsi untuk membuat membuat sketch baru
dengan bare minimum yang terdiri void setup() dan void loop().
·
Open, berfungsi membuka sketch yang pernah
dibuat di dalam drive.
·
Open Recent, merupakan menu yang berfungsi
mempersingkat waktu pembukaan file atau sketch yang baru-baru ini sudah dibuat.
·
Sketchbook, berfungsi menunjukan hirarki sketch
yang kamu buat termasuk struktur foldernya.
·
Example, berisi contoh-contoh pemrograman yang
disediakan pengembang Arduino, sehingga kamu dapat mempelajari program-program
dari contoh yang diberikan.
·
Close, berfungsi menutup jendela Arduino IDE dan
menghentikan aplikasi.
·
Save, berfungsi menyimpan sketch yang dibuat
atau perubahan yang dilakukan pada sketch
·
Save as…, berfungsi menyimpan sketch yang sedang
dikerjakan atau sketch yang sudah disimpan dengan nama yang berbeda.
·
Page Setup, berfungsi mengatur tampilan page
pada proses pencetakan.
·
Print, berfungsi mengirimkan file sketch ke
mesin cetak untuk dicetak.
·
Preferences, disini kam dapat merubah tampilan
interface IDE Arduino.
·
Quit, berfungsi menutup semua jendela Arduino
IDE. Sketch yang masih terbuka pada saat tombol Quit ditekan, secara otomatis
akan terbuka pada saat Arduino IDE dijalankan.
3.
Edit
·
Undo/Redo, berfungsi untuk mengembalikan
perubahan yang sudah dilakukan pada Sketch beberapa langkah mundur dengan Undo
atau maju dengan Redo.
·
Cut, berfungsi untuk meremove teks yang terpilih
pada editor dan menempatkan teks tersebut pada clipboard.
·
Copy, berfungsi menduplikasi teks yang terpilih
kedalam editor dan menempatkan teks tersebut pada clipboard.
·
Copy for Forum, berfungsi melakukan copy kode
dari editor dan melakukan formating agar sesuai untuk ditampilkan dalam forum,
sehingga kode tersebut bisa digunakan sebagai bahan diskusi dalam forum.
·
Copy as HTML, berfungsi menduplikasi teks yang
terpilih kedalam editor dan menempatkan teks tersebut pada clipboard dalam
bentuk atau format HTML. Biasanya ini digunakan agar code dapat diembededdkan
pada halaman web.
·
Paste, berfungsi menyalin data yang terdapat
pada clipboard, kedalam editor.
·
Select All, berfungsi untk melakukan pemilihan
teks atau kode dalam halaman editor.
·
Comment/Uncomment, berfungsi memberikan atau
menghilangkan tanda // pada kode atau teks, dimana tanda tersebut menjadikan
suatu baris kode sebagai komen dan tidak disertakan pada tahap kompilasi.
·
Increase/Decrease Indent, berfunsgi untuk
mengurangi atau menambahkan indetntasi pada baris kode tertentu. Indentasi
adalah “tab”.
·
Find, berfungsi memanggil jendela window find
and replace, dimana kamu dapat menggunakannya untuk menemukan variabel atau
kata tertentu dalam program atau menemukan serta menggantikan kata tersebut
dengan kata lain.
·
Find Next, berfungsi menemukan kata setelahnya
dari kata pertama yang berhasil ditemukan.
·
Find Previous, berfungsi menemukan kata
sebelumnya dari kata pertama yang berhasil ditemukan.
4.
Sketch
·
Verify/Compile, berfungsi untuk mengecek apakah
sketch yang kamu buat ada kekeliruan dari segi sintaks atau tidak. Jika tidak
ada kesalahan, maka sintaks yang kamu buat akan dikompile kedalam bahasa mesin.
·
Upload, berfunsi mengirimkan program yang sudah
dikompilasi ke Arduino Board.
·
Uplad Using Programmer, menu ini berfungsi untuk
menuliskan bootloader kedalam IC Mikrokontroler Arduino. Pada kasus ini kamu
membutuhkan perangkat tambahan seperti USBAsp untuk menjembatani penulisan
program bootloader ke IC Mikrokontroler.
·
Export Compiled Binary, berfungsi untuk
menyimpan file dengan ekstensi .hex, dimana file ini dapat disimpan sebagai
arsip untuk di upload ke board lain menggunakan tools yang berbeda.
·
Show Sketch Folder, berfungsi membuka folder
sketch yang saat ini dikerjakan.
·
Include Library, berfunsi menambahkan
library/pustaka kedalam sketch yang dibuat dengan menyertakan sintaks #include
di awal kode. Selain itu kamu juga bisa menambahkan library eksternal dari file
.zip kedalam Arduino IDE.
·
Add File…, berfungsi untuk menambahkan file
kedalam sketch arduino (file akan dikopikan dari drive asal). File akan muncul
sebagai tab baru dalam jendela sketch.
5.
Tools
·
Auto Format, berfungsi melakukan pengatran
format kode pada jendela editor
·
Archive Sketch, berfungsi menyimpan sketch
kedalam file .zip
·
Fix Encoding & Reload, berfungsi memperbaiki
kemungkinan perbedaan antara pengkodean peta karakter editor danpeta karakter
sistem operasi yang lain.
·
Serial Monitor, berungsi membuka jendela serial
monitor untuk melihat pertukaran data.
·
Board, berfungsi memilih dan melakukan
konfigurasi board yang digunakan.
·
Port, memilih port sebbagai kanal komunikasi
antara software dengan hardware.
·
Programmer, menu ini digunakan ketika kamu
hendak melakukan pemrograman chip mikrokontroller tanpa menggunakan koneksi
Onboard USB-Serial. Biasanya digunakan pada proses burning bootloader.
·
Burn Bootloader, mengizinkan kamu untuk
mengkopikan program bootloader kedalam IC mikrokontroler
6.
Help
Menu help berisikan file-file dokumentasi yang berkaitan dengan masalah yang sering muncul, serta penyelesaiannya. Selain itu pada menu help juga diberikan link untuk menuju Arduino Forum guna menanyakan serta mendiskusikan berbagai masalah yang ditemukan.
7.
Sketchbook
Arduino Software IDE, menggunakan konsep sketchbook, dimana sketchbook
menjadi standar peletakan dan penyimpanan file program. Sketch yang telah kamu
buat dapat dibuka dengan dari File →
Sketchbook, atau dengan menu Open.
8.
Tabs, Multiple Files, dan Compilations
Mekanisme ini mengizinkan untuk melakukan menejemen sketch, dimana lebih
dari satu file dibuka dalam tab yang berbeda.
9.
Uploading
Merupakan mekanisme untuk mengkopikan file .hex atau file hasil kompilasi
kedalam IC mikrokontroler Arduino. Sebelum melakukan uploading, yang perlu kamu
pastikan adalah jenis board yang kamu gunakan dan COM Ports dimana keduanya
terletak pada menu Tools →
Board dan Tools →
Port.
10. Library
Library/ Pustaka merupakan file yang memberikan fungsi ekstra dari sketch
yang kamu buat, semisal agar Arduino dapat bekerja dengan hardware tertentu dan
melakukan proses manipulasi data. Untuk menginstal Library pihak ketiga alias
Library bukan dari Arduino, dapat dilakukan dengan Library Manager, Import file
.zip, atau kopi paste secara manual di folder libraries pada Documents di
platform Windows. Untuk instalasi library dapat kunjungi link berikut.
11. Serial
Monitor
Serial monitor merupakan suatu jendela yang menunjukan data yang
dipertukaran antara arduino dan komputer selama beroperasi, sehingga kamu bisa
menggunakan serial monitor ini untuk menampilkan nilai hasil operasi atau pesan
debugging. Selain melihat data, kamu juga bisa mengirimkan data ke Arduino
melalui serial monitor ini, caranya dengan memasukkan data pada text box dan
menekan tombol send untuk mengirimkan data. Hal penting yang harus kamu
perhatikan adalah menyamakan baudrate antara serial monitor dengan Arduino
board. Untuk menggunakan kemampuan komunikasi serial ini, pada Arduino, di
bagian fungsi void setup(), diawali dengan instruksi Serial.begin diikuti
dengan nilai baudrate.
12. Preferences
Preferences mengatur tentang beberapa hal dalam penggunaan Arduino
Software IDE, seperti ukuran font, lokasi dimana menyimpan sketcbook, bahasa
yang digunakan pada Arduino Software IDE, dan masih banyak lagi. Kamu bisa
mengatur preferences pada menu file yang dapat dijumpai pada platform Windows
dan Linux.
13. Language
Support
Language Support merupakan pilihan bahasa yang dapat disesuaikan pada
Software Arduino IDE. Bahasa Indonesia sudah ada loh. Language Support ini
dapat ditemukan pada menu file -> preferences atau dengan menekan
Ctrl+Comma.
14. Boards
Pemilihan board pada Arduino Software IDE, berdampak pada dua parameter
yaitu kecepatan CPU dan baudrate yang digunakan ketika melakukan kompilasi dan
meng-upload sketch. Beberapa contoh board yang dapat digunakan dengan Arduino
Software IDE adalah:
·
Arduino Yùn
Menggunkana ATmega32u4 dan berjalan pada clock 16 MHz dengan auto-reset,
memiliki 12 Input Analog , 20 Digital I/O serta 7 PWM.
·
Arduino/Genuino Uno
Menggunakan ATmega328 dan berjalan pada clock 16 MHz dengan auto-reset,
memiliki 6 Input Analog , 14 Digital I/O serta 7 PWM.
·
Arduino Diecimila or Duemilanove w/ ATmega168
Menggunakan ATmega168 dan berjalan pada clock 16 MHz dengan auto-reset.
·
Arduino Nano w/ ATmega328
Menggunakan ATmega328 dan berjalan pada clock 16 MHz dengan auto-reset.
memiliki 6 Input Analog.
·
Arduino/Genuino Mega 2560
Menggunakan ATmega2560 dan berjalan pada clock 16 MHz dengan auto-reset,
memiliki 16 Input Analog, 54 Digital I/O dan 15 PWM.
·
Arduino Mega
Menggunakan ATmega1280 dan berjalan pada clock 16 MHz dengan auto-reset,
memiliki 16 Input Analog, 54 Digital I/O dan 15 PWM.
·
Arduino Mega ADK
Menggunakan ATmega2560dan berjalan pada clock 16 MHz dengan auto-reset,
memiliki 16 Input Analog, 54 Digital I/O dan 15 PWM.
·
Arduino Leonardo
Menggunakan ATmega32u4 dan berjalan pada clock 16 MHz dengan auto-reset,
memiliki 12 Input Analog, 20 Digital I/O dan 7 PWM.
·
Arduino Micro
Menggunakan ATmega32u4 dan berjalan pada clock 16 MHz dengan auto-reset,
memiliki 12 Input Analog, 20 Digital I/O dan 7 PWM.
·
Arduino Esplora
Menggunakan ATmega32u4 dan berjalan pada clock 16 MHz dengan auto-reset.
·
Arduino Mini w/ ATmega328
Menggunakan ATmega328 dan berjalan pada clock 16 MHz dengan auto-reset,
memiliki 8 Input Analog, 14 Digital I/O dan 6 PWM.
·
Arduino Ethernet
Equivalent to Arduino UNO with an Ethernet shield: An ATmega328 dan
berjalan pada clock 16 MHz dengan auto-reset, memiliki 6 Input Analog, 14
Digital I/O dan 6 PWM.
·
Arduino Fio
Menggunakan ATmega328 dan berjalan pada clock 8 MHz dengan auto-reset.
Memiliki kesamaan dengan Arduino Pro atau Pro Mini (3.3V, 8 MHz) w/ ATmega328,
memiliki 6 Input Analog, 14 Digital I/O dan 6 PWM.
·
Arduino BT w/ ATmega328
Menggunakan ATmega328 dan berjalan pada clock 16 MHz. Bootloader dengan ukuran (4 KB) termasuk kode untuk melakukan inisialisasi pada modul bluetooth, memiliki 6 Input Analog, 14 Digital I/O and 6 PWM.
·
LilyPad Arduino USB
Menggunakan ATmega32u4dan berjalan pada clock 8 MHz dengan auto-reset,
memiliki 4 Input Analog, 9 Digital I/O dan 4 PWM.
·
LilyPad Arduino
Menggunakan ATmega168 atau ATmega132 dan berjalan pada clock 8 MHz dengan
auto-reset, memiliki 6 Input Analog, 14 Digital I/O dan 6 PWM.
·
Arduino Pro or Pro Mini (5V, 16 MHz) w/
ATmega328
Menggunakan ATmega328 dan berjalan pada clock 16 MHz dengan auto-reset.
Memiliki kesamaan dengan Arduino Duemilanove atau Nano w/ ATmega328, memiliki 6
Input Analog, 14 Digital I/O dan 6 PWM.
·
Arduino NG or older w/ ATmega168
Menggunakan ATmega168 dan berjalan pada clock 16 MHz without auto-reset.
Proses kompilasi dan upload sama dengan Arduino Diecimila atau Duemilanove w/
ATmega168,memiliki 16 Input Analog, 14 Digital I/O and 6 PWM.
·
Arduino Robot Control
Menggunakan ATmega328 dan berjalan pada clock 16 MHz dengan auto-reset.
·
Arduino Robot Motor
Menggunakan ATmega328 dan berjalan pada clock 16 MHz dengan auto-reset.
·
Arduino Gemma
Menggunakan ATtiny85 dan berjalan pada clock 8 MHz dengan auto-reset, 1 Analog In, 3 Digital I/O and 2 PWM.
1.3 Instalasi Arduino IDE
Adapun langkah-langkah instalasi ardunio
IDE yakni sebagai berikut.
1.
Download software
arduino IDE pada link http://www.arduino.cc/ pada bagian menu Software.
2.
Pilih software
sesuai hardware atau laptop yang dipakai.
3.
Klik Download dan tunggu sampai selesai, serta
pastikan jaringan internet stabil.
4.
Jika proses download selesai, buka windows
explorer dan temukan software hasil
download kemudian buka software
tersebut.
5. Pilih “I Agree” untuk menyetujui License Agreement.
6.
Centang semua komponen yang diperlukan untuk
arduino IDE kemudian klik Next.
7.
Berikutnya merupakan penempatan instalasi
software, langsung pilih Install saja karena biasanya penempatan software
otomatis ke partisi utama (Local Disk C).
8. Tunggu proses instalasi sampai selesai.
9.
Jika ada peringatan untuk instal driver atau
tidak maka dapat memilih Install.
10. Jika
proses instalasi selesai klik Close.
11. Berikut hasil instalasi software arduino IDE pada laptop.
1.4
Istilah-Istilah Program Arduino
1.
Fungsi
a.
Void setup()
Fungsi void setup pada Arduino adalah sebagai bentuk inisialisasi atau
pengenalan dalam program Arduino dan hanya dieksekusi sekali sejak program
dijalankan. Umumnya fungsi ini digunakan untuk pendefinisian mode pin atau
memulai komunikasi serial. Perhatikan contoh fungsi void setup di bawah ini:
void setup()
{
pinMode(13,OUTPUT);
}
Keterangan:
Dalam perintah tersebut terdapat pernyataan atau statement yang berisi
penginisialisasian pin 13 sebagai pin output atau keluaran.
b.
Void loop()
Setelah void setup() dijalankan, selanjutnya program akan menjalankan
fungsi void loop(). Fungsi ini akan dieksekusi terus-menerus secara berurutan
hingga program berhenti dijalankan. Silahkan lihat contoh fungsi void loop() di
bawah ini:
void loop()
{
digitalWrite(13, HIGH);
delay(1000);
}
Untuk beberapa kasus pemrograman yang kompleks, terkadang programmer juga
menambahkan void baru untuk mempermudah pemrograman. Void baru bisa diletakkan
setelah atau sebelum void loop().
2.
Sintaks
Secara umum, syntax atau sintaks dikenal sebagai seperangkat aturan tata
bahasa pada kata atau klausa dalam membentuk kalimat. Sedangkan dalam bahasa
pemrograman, sintaks diartikan sebagai suatu aturan dalam penulisan kode
program agar kode tersebut bisa dimengerti komputer. Sintaks dalam Arduino bisa
juga disebut sebagai aturan karakteristik penulisan kode program Arduino.
Beberapa sintaks dasar pemrograman Arduino Uno antara lain:
1)
Titik Koma (Semicolon)
Tanda titik koma adalah syntax wajib dalam pemrograman Arduino. Biasanya
sintaks ini ditempatkan pada akhir pernyataan. Contohnya seperti berikut ini:
int x = 13;
2)
Kurung Kurawal (Curly Braces)
Kurung kurawal berfungsi untuk mendefinisikan awal dan akhir dari sebuah
blok fungsi. Contohnya bisa kamu lihat di bawah ini:
void loop()
{
isi program
}
3)
#define
Fungsi define pada Arduino yaitu memungkinkan programmer dalam memberi
nama untuk nilai konstan sebelum program dapat dikompilasi. Untuk
mendeklarasikan nomor pin yang digunakan bisa ditulis dengan format sebagai
berikut:
#define ledPin 3
Keterangan:
ledPin = variabel yang digunakan
3 = nilai(value) atau pin yang sedang digunakan
4)
#include
Fungsi include pada Arduino yaitu untuk memasukkan library ke dalam
sketch. Dimana fungsi library Arduino sendiri adalah memudahkan pengguna dalam
melakukan pengodingan. Cara penggunaan sintaks sangat mudah. Kamu hanya perlu
menambahkan nama library yang ingin di-import ke program di belakang sintaks
tersebut. Contohnya seperti di bawah ini:
#include <OneWire.h>
5)
Komentar
Apabila kamu bertanya bagaimana cara untuk memberikan catatan pada
program yang kita buat di Arduino IDE? Maka jawabannya, kamu bisa menggunakan
sintaks komentar. Sintaks komentar pada program Arduino adalah sintaks yang berfungsi
menambah keterangan pada program yang dibuat. Sehingga kata atau kalimat yang
diberi sintaks komentar tak akan terbaca oleh compiler. Setidaknya ada dua
macam sintaks komentar yang perlu kamu tahu, yaitu:
a.
Sintaks komentar satu baris
Untuk membuat komentar yang hanya menggunakan satu baris saja, kamu bisa
menggunakan sintaks garis miring dua kali “//”. Contoh penggunaan sintaksnya
seperti ini.
// isi komentar
b.
Sintaks komentar lebih dari satu baris
Untuk membuat komentar yang jumlahnya barisnya lebih dari satu, kamu
harus menggunakan sintaks dua garis miring dan bintang. Dimana komentar yang
ingin dimasukkan berada di tengah. Berikut contoh penggunaannya:
/* isi komentar */
3.
Tipe Data
Berikut tipe data yang sering digunakan pada arduino.
|
Tipe Data |
Lebar Data |
Jangkauan |
|
char |
1 byte |
-128 s/d
127 |
|
unsigned
char |
1 byte |
0 s/d
255 |
|
byte |
1 byte |
0 s/d
255 |
|
word |
2 byte |
1 s/d
65535 |
|
int |
2 byte |
-32768
s/d 32767 |
|
unsigned
int |
2 byte |
0 s/d
65535 |
|
long |
4 byte |
-2147438648
s/d 2147438647 |
|
unsigned
long |
4 byte |
0 s/d
4294967295 |
|
float |
4 byte |
-3.4028235E+38
s/d 3.4028235E+38 |
Untuk format penulisan tipe data Arduino dalam program sangatlah mudah.
Kita hanya perlu menempatkannya di depan variabel yang ingin kamu deklarasikan
dengan diantarai satu spasi. Misalkan kita ingin mendeklarasikan suatu variabel
bernama “cobaCoba” dengan tipe data integer dan menggunakan pin 5. Maka
penulisan perintahnya seperti ini:
int cobaCoba = 5;
Jadi, fungsi int pada Arduino IDE yang letaknya di awal variabel adalah
untuk mendeklarasikan bahwa variabel tersebut bertipe data integer.
4.
Variabel
Variabel dalam bahasa program Arduino bisa didefinisikan sebagai suatu
wadah untuk menyimpan atau menampung data. Kita dibebaskan memilih nama
variabel yang diinginkan, asalkan sesuai dengan ketentuan berikut:
·
Tidak menggunakan spasi
·
Maksimal 32 karakter
·
Tidak menggunakan istilah baku dalam bahasa C
Arduino
Sebagai contoh, misalkan kita ingin mendefinisikan nilai pin 2 dengan
variabel “berhasil” dan menggunakan tipe data integer. Maka contoh penulisannya
yaitu:
int berhasil = 2;
5.
Nilai Konstan
Pada dasarnya, Arduino telah memiliki beberapa variabel yang telah
memiliki nilai yang disebut sebagai konstan. Karena nilainya sudah ditentukan,
jadi tidak perlu lagi didefinisikan di awal. Berikut ini adalah macam-macam
nilai konstan:
1)
TRUE/FALSE
TRUE dan FALSE adalah konstanta boolean yang digunakan untuk
mendefinisikan level logika. Apakah ia bernilai benar (TRUE) atau salah
(FALSE). TRUE didefinisikan sebagai 1 dan FALSE sebagai 0. Lihat contoh format
penulisannya berikut ini:
If(c==TRUE);
{
perintah;
}
2)
HIGH/LOW
Variabel konstan HIGH dan LOW umumnya digunakan untuk menentukan kondisi
pin saat membaca dan menulis data di pin digital. HIGH didefinisikan sebagai 1,
ON, 5 volt, atau menyala. Sedangkan LOW didefinisikan sebagai 0, OFF, 0 volt,
atau padam. Sehingga dapat dikatakan bahwa perintah untuk menyalakan/memberikan
sinyal ON pada program Arduino adalah HIGH. Sedangkan perintah untuk memberikan
sinyal OFF pada program Arduino adalah FALSE. Contoh penulisannya seperti ini.
digitalWrite(13, HIGH);
digitalWrite(13, LOW)
3)
INPUT/OUTPUT
Variabel konstan ini sering digunakan pada fungsi pinMode() untuk
mendefinisikan pin digital. Apakah ia berperan sebagai INPUT atau OUTPUT.
Contoh penggunaannya seperti pada perintah di bawah ini.
pinMode(13, OUTPUT);
6.
Perintah Pin Digital I/O
Setidaknya, ada tiga macam perintah yang biasa digunakan untuk mengatur
pin digital input/output dalam pemrograman Arduino, yaitu terdiri atas:
1)
pinMode(pin, mode)
pinMode() merupakan suatu perintah yang biasa ditemukan pada block void
setup(). Fungsi pinMode() pada Arduino adalah untuk memperjelas apakah suatu
pin digunakan sebagai INPUT atau OUTPUT. Contoh penulisannya seperti ini.
pinMode(3, INPUT);
Keterangan:
3 = nomor pin yang ingin
dikonfigurasi
INPUT = mode yang digunakan
2)
digitalRead(pin)
Penggunaan perintah ini bertujuan untuk membaca nilai pin digital yang
dikehendaki lalu menyimpannya dalam suatu variabel. Berikut contoh penulisannya.
Baca = digitalRead(8);
Keterangan:
Baca = nama variabel yang menyimpan data hasil pembacaan
8 = nomor pin digital yang
digunakan
3)
digitalWrite(pin, value)
digitalWrite merupakan suatu perintah untuk menuliskan suatu nilai pada
pin digital. Fungsi digitalWrite() pada Arduino adalah untuk menentukan nilai
logika awal pada suatu pin apakah LOW atau HIGH. Berikut contoh penulisannya.
digitalWrite(9,HIGH);
Keterangan:
9 = nomor pin digital yang
digunakan
HIGH = kondisi yang diinginkan
7.
Perintah Pin Analog I/O
Berbeda dengan pin digital, pin analog hanya memiliki dua jenis perintah
yang sering digunakan. Ini karena pin analog tak membutuhkan perintah
penginisialisasian dengan pinMode(). Berikut ini adalah dua macam perintah pada
pin analog yang sering digunakan.
1)
analogRead(pin)
Fungsi analogRead() pada Arduino yaitu untuk membaca data dari pin analog
kemudian disimpan dalam suatu variabel. Dimana data hasil pembacaan tersebut
berupa nilai integer dengan kisaran 0 sampai 1023. Berikut contoh penulisannya.
Baca = analogRead(A0);
Keterangan:
Baca = nama variabel tempat menampung data hasil pembacaan
A0 = nama pin analog yang digunakan (A0 sampai A6)
2)
analogWrite(pin, value)
Perintah ini berfungsi untuk mengirimkan nilai analog dengan metode PWM
(Pulse Width Modulation) pada pin khusus yang berlabel PWM, yaitu pin 3, 5, 6,
9, 10, dan 11. Pin PWM biasanya ditandai dengan adanya tanda tilde (~) di depan
atau di atas nama pin. Adapun untuk nilai yang biasa digunakan dalam PWM, yaitu
mulai dari 0 sampai 255. Jadi, kamu bisa mengatur frekuensi PWM dari nilai
tersebut. Contoh penulisan analogWrite() yang benar seperti pada contoh di
bawah ini.
analogWrite(5,100);
Keterangan:
5 = nama pin analog yang
digunakan
100 = nilai PWM yang digunakan
Dengan demikian perbedaan analogRead() dan analogWrite() dari segi fungsi
yakni perintah analogread() untuk membaca data analog Arduino, sedangkan
perintah analogWrite() untuk menuliskan data analog pada pin Arduino. Sedangkan
perbedaan analogWrite() dan digitalWrite() adalah analogWrite untuk menulis
data analog, sedangkan digitalWrite() untuk menulis data digital.
8.
Pengaturan Waktu (Time)
Ada tiga perintah yang biasa digunakan dalam pemrograman Arduino untuk
mengatur waktu, yaitu:
1)
millis()
Fungsi milis pada Arduino yaitu menghasilkan nilai waktu dalam satuan
milidetik sejak program Arduino dijalankan. Namun setelah 50 hari dijalankan,
nilainya akan kembali lagi ke nol. Tipe data yang sering digunakan untuk
perintah ini adalah unsigned long. Jadi, pastikan harus terlebih dahulu
mendefinisikan variabel yang ingin kamu gunakan sebagai penampung nilai milis()
dengan tipe data unsigned long. Format penulisannya seperti berikut ini:
variabel = millis();
Contoh program milis Arduino seperti ini.
unsigned long waktu;
void setup(){
Serial.print(“Milidetik: “);
waktu = millis();
Serial.println(waktu);
}
2)
micros()
Perintah ini berfungsi untuk menghasilkan nilai waktu dalam satuan
mikrodetik sejak program mulai dijalankan. Nilai akan kembali lagi ke nol
apabila telah mencapai 70 menit. Format penulisannya seperti di bawah ini:
variabel = micros();
Contoh program Arduino sederhana tentang penggunaan perintah micros()
yaitu sebagai berikut:
unsigned long waktu;
void setup(){
Serial.print(“Mikrodetik : “);
waktu = micros();
Serial.println(waktu);}
3)
delay()
Fungsi delay() digunakan untuk memberikan tambahan waktu atau penundaan
dalam satuan milidetik sebelum mengeksekusi program pada baris selanjutnya.
Adapun untuk waktu penundaannya menyesuaikan dengan nilai yang dimasukkan ke
perintah. Contohnya seperti ini:
delay(1000);
Keterangan:
Perintah tersebut berfungsi untuk memberikan jeda pada program selama
1000 milidetik atau setara dengan 1 detik.
4)
delayMicroseconds()
Sama seperti delay() tetapi delayMicroseconds() juga berfungsi untuk
memberikan jeda waktu. Hanya saja, jeda yang diberikan dalam satuan mikrodetik.
Dimana 1 juta mikrodetik setara dengan 1 detik. Jadi, sangat tidak disarankan
menggunakan perintah ini bila ingin berpatokan pada satuan detik. Berikut
contoh penulisan perintah yang benar.
delayMicrosecond(300);
Keterangan:
Perintah tersebut berfungsi untuk menjeda program selama 300 mikrodetik
atau setara dengan 0,0003 detik.
9.
Komunikasi Serial
Pada dasarnya, komunikasi serial adalah komunikasi dua arah yang
melibatkan transmitter dan receiver. Pada Arduino sendiri, transmitter dan
receiver-nya sudah tersedia di pin Rx dan Tx maupun pada USB. Umumnya,
komunikasi serial digunakan untuk menampilkan data hasil perhitungan Arduino di
serial monitor. Serial monitor pada Arduino IDE yaitu suatu fasilitas untuk
mengontrol dan memonitoring apa yang sedang terjadi di papan Arduino melalui
komputer. Beberapa contoh perintah Arduino yang sering digunakan dalam
komunikasi serial antara lain:
1)
Serial.begin()
Serial begin merupakan suatu perintah untuk mengaktifkan komunikasi
serial dengan nilai baudrate atau kecepatan transmisi yakni sebesar 9600 bps
.Untuk penulisan perintahnya seperti ini:
Serial.begin(9600);
2)
Serial.print()
Serial.print yaitu suatu perintah yang berfungsi untuk menampilkan data
di serial monitor untuk satu baris saja. Jadi, data akan terus bermunculan
hanya pada satu baris di serial monitor. Berikut ini contoh penulisan
Serial.print() yang benar dalam program:
Serial.print(Tampil);
Keterangan:
Tampil adalah variabel penampung nilai yang ingin ditampilkan pada serial
monitor.
3)
Serial.println()
Perintah ini kira-kira fungsinya hampir sama dengan Serial.print(). Hanya
saja, data yang ditampilkan akan terus bermunculan ke bawah. Jadi data yang
muncul tidak berada dalam satu baris saja, karena setiap selesai menampilkan
data, secara otomatis program akan memberi perintah enter atau pindah ke baris
berikutnya. Contoh penulisannya seperti berikut ini:
Serial.print(Muncul);
Keterangan:
Muncul adalah variabel penampung yang didalamnya terdapat nilai yang ingin ditampilkan di serial monitor.
1.5 Struktur
Program Arduino
Berikut contoh struktur dasar program untuk arduino.
|
Source
Code |
Penjelasan |
|
void
setup() { pinMode(13, OUTPUT); } |
Merupakan
fungsi inisialisasi bahwa pin yang digunakan merupakan pin 13 dan berperan
sebagai output. |
|
void
loop() { digitalWrite(13, HIGH); delay(1000); digitalWrite(13, LOW); delay(1000); } |
Merupakan fungsi yang akan dieksekusi terus menerus secara berurutan
hingga program berhenti dijalankan. Program
berjalan dengan pertama digitalWrite dengan nomor pin 13 dengan status HIGH
kemudian dilanjutkan delay atau jeda waktu sebanyak 1000 milidetik atau 1 detik.
Kedua digitalWrite dengan nomor pin 13 dengan status LOW kemudian dilanjutkan
lagi delay atau jeda waktu sebanyak 1000 milidetik atau 1 detik. |
Sumber
https://www.aldyrazor.com/2020/07/bahasa-pemrograman-arduino.html

Komentar
Posting Komentar