Pembelajaran ini mengulas tentang dasarArduino yang mencakup kegunaan, jenis, cara mengoneksikan ke komputer, dan juga cara menginstal Arduino IDE (yang digunakan untuk membuat program). Selain itu, bab ini memberikan dasar pemrograman di Arduino untuk memudahkan Anda dalam menuliskan programdi bab-bab selanjutnya. Tak lupa, pengenalan komponen yang Anda perlukan untuk latihan yang dimulai di Bab 2 ikut diberikan
1.1. Apa itu Arduino?
Arduino adalah nama keluarga papan mikrokontroler yang awalnya dibuat oleh perusahaan Smart Projects Salah satu tokoh penciptanya adalah Massimo Banzi. Papan ini merupakan perangkat keras yang bersifat “open source” sehingga boleh dibuat oleh siapa saja.
Arduino dibuat dengan tujuan untuk memudahkan eksperimen atau perwujudan pelbagai peralatan yang berbasis mikrokontroler, misalnya:
Pemantauan ketinggian air di waduk,
Pelacakan lokasi mobil,
Penyiraman tanaman secara otomatis,
Otomasi akses pintu ruangan, dan
Pendeteksi keberadaan orang untuk pengambilan keputusan.
Berbagai jenis kartu Arduino tersedia, antara lain Arduino Uno, Arduino Diecimila,Arduino Duemilanove, Arduino Leonard0,Arduino Mega, dan Arduino Nano. Walaupun ada pelbagai jenis kartu Arduino, secara prinsip pemrograman yang diperlukan menyerupai. Hal yang membedakan adalah kelengkapan fasilitas dan pin-pin yang perlu digunakan. Mengingat buku ini, hanya diwujudkan dengan menggunakan Arduino Uno (Gambar 1.1), Anda perlu menyesuaikan diri sekiranya papan mikrokontroler yang Anda gunakan bukanlah Arduino Uno.
Gambar 1.1 Arduino Uno
1.2 Arduino Uno
Arduino Uno berukuran sebesar kartu kredit. Walaupun berukuran kecil seperti itu, papan tersebur mengandung mikrokontroler dan sejumlah input/output (1/0) yang memudahkan pemakai untuk menciptakan berbagal proyek elektronika yang dikhususkan untuk menangani tujuan tertentu. Ragian-bagian e Arduino Uno yang perlu diketahui terlebih dahulu ditunjukkan di Gambar 1.2.
Penjelasan bagian masing-masing seperti berikut.
Port USB digunakan untuk menghubungkan Arduino Uno dengan komputer, melalui sepasang kabel USB (Gambar 1.3).
Colokan catu daya eksternal digunakan untuk memasok sumber daya listrik untuk Arduino Uno ketika tidak dihubungkan ke komputer. Jika Arduino Uno dihubungkan ke komputer melalui kabel USB, pasokan daya listrik diberi oleh komputer.
Pin digital mempunyai label 0 sampai dengan 13. Disebut pin digital karena mempunyai isyarat digital, yakni berupa 0 atau 1. Dalam praktik, nilai 0 dinyatakan dengan tegangan oV dan nilai 1 dinyatakan dengan tegangan 5V.
Pin analog berarti bahwa pin-pin ini mempunyai nilai yang bersifat analog (nilai yang berkesinambungan). Dalam program, nilai setiap pin analog yang berlaku sebagai masukan (hasil dari sensor) berkisar antara 0 sampai dengan 1023.
Mikrokontroler yang digunakan di Arduino Uno adalah Atmega328.
Ada dua pin yang dapat digunakan untuk memasok catu daya ke komponen elektronis yang digunakan dalam menangani proyek, misalnya sensor gas, sensor jarak, dan relai. Tegangan yang tersedia adalah 3,3V dan 5V.Komponen-komponen elektronis yang diberi tegangan oleh Arduino Uno adalah yang memerlukan arus kecil. Sebagai contoh, motor DC yang menarik arus lebih dari 500mA harus menggunakan catu daya tersendiri.
Arduino Uno dilengkapi dengan static rand0m-access memory (SRAM) berukuran 2KB untuk memegang Flash memory berukuran 32KB,dan erasable programmable read-only memory(EEPROM). SRAM digunakan untuk menampung data atau hasil pemrosesan data selama Arduino menerima pasokan catu daya. Fla memory untuk menaruh program yang Anda buat. EEPROM digunakan untuk menaruh program bawaan da Arduino Uno dan sebagian lagi dapat dimanfaatkan untuk menaruh data milik Anda secara permanen.
Pada pembahasan setelah ini, Arduino Uno sering hanya disebut sebagai Aduino.
1.3 Hubungan Arduino ke Komputer
Pemrograman Arduino dilakukan melalui komputer. Oleh karena itu, langkah awal yang perlu dilakukan kalau mau memprogram Arduino adalah menghubungkan papan tersebut ke komputer. Hubungan Arduino dan komputer diperlihatkan di Gambar 1.4.
Gambar 1.4 Hubungan Arduino Uno dan komputer
Untuk melihat bahwa hubungan tersebut sudah berjalan dengan baik, dua lampu berikut perlu diperiksa:
lampu kecil berlabel ON akan menyala;
lampu kecil yang terhubung pin 13 akan berkedip-kedip.
Kedua lampu tersebut diperlihatkan di Gambar 1.5.
Gambar 1.5
Setelah kedua lampu tersebut sesuai dengan yang dijelaskan di depan, pemasangan program yang digunakan untuk membuat program Arduino dapat dilaksanakan.
1.4 Instalasi Program untuk Membuat Program Arduino
Program yang digunakan untuk membuat program Arduino dinamakan Arduino Integrated Develoment Environment(Arduino IDE).Program tersebut dapat diunduh secara gratis di situs www.arduino.cc.Untuk memudahkan Anda,versi program untuk Wind0ws disediakan di CD yang disertakan bersama buku ini.Nama filenya adalah arduino-1.0.5-r2-wind0ws.
Prosedur untuk menginstal program tersebut seperti berikut:
Klik ganda pada file arduino-1.0.5-r2-wind0ws yang ada di folder Software di CD yang disediakan bersama buku ini.
Klik tombol Yes saat muncul kotak dialog User Account Control di Wind0ws 8. Langkah ini memunculkan tampilan seperti terlihat di Gambar 1.6.
Klik pada tombol Selanjutnya, akan muncul kotak dialog seperti terlihat di Gambar 1.7.
Gambar 1.7. Pilihan untuk instalasi
Klik pada tombol Next> Tampilan seperti terlihat di Gambar 1.8 akan terlihat.
Gambar 1.8 Pilihan folder
Klik pada tombol Tampilan seperti terlihat di Gambar 1.9 akan terlihat.
Gambar 1.9 Proses instalasi driver Arduino Uno
Tunggu sampai hasil seperti di Gambar 1.10 terlihat.
Klik pada tombol .Kemudian, tunggu sampai muncul kotak dialog berikut. Install
Gambar 1.11 Pemberitahuan instalasi telah selesai
Klik pada tombol close, Setelah itu, pembuatan program untuk Arduino bisa dimulai.
1.5 Percobaan Pertama,Mengontrol LED
Pada percobaan pertama sebuah LED diperlukan,Dalam hal int,anode pada LED (berkaki panjang) ditancapkan di pin 12 dan katode (yang berkaki pendek) ditancapkan ke pin GND (lihat Gambar 1.12),Ya,itu saja persiapan yang perlu dilakukan,Selanjutnya,ikuli pembahasan di Subbab 1.6
Gambar 1.12 Pemasangan LED
1.6 Percobaan Menuliskan Sketch
Program atau kumpulan kode yang digunakan untuk mengontrol papan Arduino dinamakan sketch.Sketch perlu dibuat dengan menggunakan program bernama Arduino IDE,yang telah diinstal di depan.Cara menjalankan program Arduino IDE seperti berikut:
1. Kik pada tombol Start milik Wind0ws.
2. Ketikkan:Arduino.
3.Klik ganda pada
Tampilan yang akan muncul seperti terlihat di Gambar 1.13.
Gambar 1.13. Arduino IDE, software untuk membuat sketch
Ketikan kode seperti berikut :
const int PIN_12 = 12;
void setup()
{
pinMode(PIN_12, OUTPUT);
}
void loop()
{
digitalWrite(PIN_12, HIGH);
delay(1000); // Tunda 1 Detik
digitalWrite(PIN_12, LOW);
delay(1000); // Tunda 1 Detik
}
Hasilnya ditunjukan di Gambar 1.14.
Gambar 1.14. Penulisan sketch
Untuk menyimpan sketch baru ke file, lakukan tindakan seperti berikut.
Klik pada menu File.
Klik pada Save As… untuk menyimpan. Langkah ini menampilkan kotak dialog berjudul “Save sketch folder as….”(Gambar 1.15).
Gambar 1.15 Kotak dialog untuk menyimpan sketch
Ketikkan led di kotak edit berlabel File name sehingga tampilan di kotak dialog menjadi sepen berikut.
Gambar 1.16 Pengisian nama file berupa led
Klik di tombol
Setelah langkah di atas dilakukan,judul di atas berubah menjadi
1.7 Memverifikasi Sketch
Sketch yang baru saja Anda tulis adalah kode yang dipahami oleh manusia, tetapi tidak oleh perangkat Arduino.Kode tersebut perlu dikompilasi terlebih dahulu agar dimengerti oleh Arduino.Hal itu dilakukan melalui verifikasi.Hasilnya berupa binary sketch (lihat Gambar 1.17),Untuk melakukannya,Anda perlu mengklik tombol Verify( ) .Pada proses ini,jika ada kesalahan kode di sketch,pesan kesalahan akan ditampilkan.
Gambar 1.17 Hasil kompilasi,D0ne compiling menyatakan bahwa sketch berhasil dikompilasi
1.8 Memunggah Binary Sketch
Jika tidak ada kesalahan selama verifikasi berlangsung,binary sketch (hasil verifikasi) perlu dipunggah (uplood) ke papan Arduino.Hal ini dilakukan dengan mengklik pada tombol Upload( ).
Jika tidak ada kesalahan atau gangguan,binary sketch akan diterima oleh papan Arduino dan Arduino akan members informasi berupa “D0ne uploading”,seperti terlihat di Gambar 1.18.
Gambar 1.18 Hasil pemunggahan binary sketch
Begitu binary sketch telah terunggah, kode akan dieksekusi oleh Arduino. Hasilnya, LED pun akan menyala dan mati secara bergantian.Jika Anda menjumpai hasil seperti itu, Anda telah berhasil memprogram Arduino. Selamat! Tahap selanjutnya adalah memahami terlebih dahulu dasar-dasar sketch yang Anda buat.
1.9 Memahami Kode di Sketch
Sketch dapat ditulis dengan menggunakan bahasa Catau Crt.Kode seperti
const int PIN 12-12;
menyatakan nama konstanta PIN_12 yang identik dengan nilai 12.Dalam hal ini,const menyatakan bahwa PIN_12 adalah konstanta dan int menyatakan tipe data untuk konstanta tersebut,
Kode berikutnya mengandung dua fungsi,yaitu setup() dan loop() (lihat penjelasan di Gambar 1.19). Kedua fungsi tersebut selalu ada di sketch,Isinya saja yang membedakan antara satu sketch dengan sketch lain.
Gambar 1.19 Fungsi setup() dan loop()
Fungsi setup() adalah nama fungsi yang telah disediakan oleh Arduino untuk menyatakan fungsi yang akan dijalankan pertama kali.Fungsi ini berisi kode-kode untuk kepentingan inisialisasi. Pada sketch di depan,
pinMode(PIN_12, OUTPUT);
digunakan untuk membuat pin dengan nomor PIN_12 (nilai 12) dijadikan sebagai keluaran (output).Artinya, pin tersebut akan menghasilkan tegangan yang dapat digunakan untuk mengontrol LED yang ditancapkan pada pin tersebut.OUTPUT adalah konstanta yang disediakan oleh Arduino
Fungsi loop() adalah fungsi yang secara otomatis dijalankan oleh Arduino setelah fungsi setup() dieksekusi.Seluruh kode yang ada di fungsi dengan sendirinya akan diulang terus-menerus.Satu-satunya yang bisa menghentikan eksekusi loop() adalah berhentinya pasokan catu daya ke papan Arduino.
Pernyataan berikut digunakan untuk mengeluarkan tegangan tertinggi (yaitu 5V)-yang dinyatakan dengan konstanta HIGH-di pin PIN_12(pin 12):
digitalWrite(PIN_12,HIGH);
Dengan cara seperti itu, LED yang dihubungkan ke pin tersebut dan ground (GND) akan menyala.J
Penyataan
delay(1000);
digunakan untuk membuat Arduino tidak melakukan apa pun selama 1000 milidetik atau 1 detik.Denga demikian,LED tetap menyala selama satu detik.
Selanjutnya,
digitalWrite(PIN_12, LOW);
membuat tegangan di pin 12 dinolkan.Akibatnya,LED pun menjadi padam.Pernyataan
delay(1000);
digunakan untuk membuat LED tetap padam selama satu detik.
Mengingat semua pernyataan yang ada di loop() diulang terus-menerus,efeknya berupa LED yang berkedip-kedip.Begitulah konsep pengendalian yang dilakukan dengan Arduino.
1.10 Apa Selanjutnya?
Dasar pembuatan sketch hingga hasil kompilasinya diunggahkan ke papan Arduino telah Anda lalui. Penjelasan mengenai sketch tersebut juga telah Anda pahami. Maka,tahap selanjutnya adalah mendalami berbagai dasar pemrograman Arduino dengan melibatkan berbagai komponen dasar.Subbab 1.11 menjelaskan beberapa hal dasar dalam pemrograman yang perlu Anda akrabi sekiranya Anda tidak terbiasa menggunakan bahasa C ataupun C++.Di Bab 2,Anda akan memulai membuat berbagai sketch.Sekiranya Anda sudah memahami C atau C++,tentu saja Anda bisa mengabaikannya dan langsung menuju ke Subbab 1.12.
Selain itu,Anda perlu menyiapkan berbagai peralatan dan komponen elektronis. Kebutuhan dasar yang diperlukan dibahas di Subbab 1.12.
1.11 Dasar Pemrograman
Agar pembuatan sketch dapat dilakukan dengan mudah,beberapa istilah dasar pemrograman perlu dipahami dahulu.Di subbab inilah sejumlah dasar pemrograman untuk membuat sketch dibahas.
Fungsi dan Pernyataan
Sketch pada hakikatnya tersusun atas sejumlah fungsi.Contoh di depan melibatkan fungsi bawaan bernama setup() dan loop().Fungsi adalah suatu blok/kumpulan kode di dalam suatu program yang diberi nama. ika nama fungsi dipanggil, kode yang ada di dalamnya akan dijalankan. Sebuah program paling tidak mengandung satu fungsi. Setiap fungsi terdiri atas satu atau beberapa pernyataan,yang secara keseluruhan imaksudkan untuk melaksanakan tugas khusus.
Bagian pernyataan fungsi (sering disebut tubuh fungsi) diawali dengan tanda kurung kurawal buka ({) dan diakhiri dengan kurung kurawal tutup (}). Namun, pada kenyataannya suatu fungsi bisa saja tidak mengandung pernyataan sama sekali. Dalam hal ini, fungsi yang tidak mengandung pernyataan sama sekali, kurung kurawal haruslah tetap ada, sebab kurung kurawal mengisyaratkan awal dan akhir definisi fungsi.
Secara umum, fungsi mempunyai sintaks seperti berikut:
tipe_nilai_balik nama_fungsi(daftar_parameter)
{
pernyataan_fungsi
}
Tipe balik fungsi bisa tidak ada, sebagaimana pada fungsi setup () dan loop(). Pada keadaan seperti itu, kata void dicantumkan. Tipe balik fungsi dapat berupa seperti int dan d0uble (lihat Tabel 1.1).Suatu fungsi bisa mengandung parameter ataupun tidak. Sebagai contoh,setup() tidak mengandung parameter, sedangkan digitalWrite() melibatkan dua parameter.
Pada pemanggilan fungsi, parameter biasa disebut sebagai argumen. Dalam
istilah formal, parameter dalam definisi fungsi dinamakan parameter
normal,sedangkan argumen dinamakan parameter aktual.
Kode
digitalWrite(PIN 12, HIGH);
merupakan contoh lain tentang pernyataan.Pada contoh tersebut, pernyataan tersebut digunakan untuk menampilkan tulisan yang terletak pada sepasang tanda petik ganda ke layar. Dalam hal ini,tulisan yang terletak pada sepasang tanda petik ganda disebut literal string (konstanta string).
Umumnya,pernyataan berupa instruksi untuk menyuruh perangkat keras melakukan sesuatu. Membuat pin bernilai 1(HIGH), menghitung suatu operasi aritmatika, membaca data dari pin adalah suatu tugas yang diemban oleh pernyataan.
Setiap pernyataan umumnya diakhiri dengan tanda titik koma (;). Kealpaan dalam memberikan tanda ini akan menyebabkan kompiler memberikan pesan kesalahan saat kompilasi dilakukan.Gambar 1.20 memberikan penjelasan visual pernyataan.
Gambar 1.20 Pernyataan
Gaya Penulisan Program
Pemrogram sebenarnya mempuyai keleluasaan dalam menuliskan bentuk atau gaya kode di sketch.Namun sketch hendaknya ditulis dalam bentuk yang mudah dibaca oleh siapa saja, bukan dalam bentuk yang paling mampat. Hal yang lebih penting lagi adalah konsistensi dengan gaya yang dipilih. Konsistensi aka mempermudah pemrogram ataupun orang lain dalam memahami atau menulis program.
Pemberian baris kosong pada posisi tertentu akan membantu program mudah dibaca.Begitu jug penambahan karakter spasi antarelemen di suatu pernyataan,misalnya antara koma dan HIGH pada pernyataan berikut, akan membuat kode lebih mudah dibaca oleh orang:
digitalWrite(PIN_12, HIGH);
Beberapa ped0man penting dalam menuliskan sketch dapat dilihat di bawah ini.
Setiap baris lebih baik hanya mengandung satu pernyataan. Namun, Anda diperkenankan menambahkan komentar setelah suatu pernyataan di baris yang sama. Contoh:
j++; // Naikkan j sebesar satu
Spasi sebaiknya diberikan sebelum dan sesudah operator yang melibatkan dua operand.
Contoh: 2 + 3 lebih baik daripada
2+3
Dua argumen (parameter) dalam pemanggilan fungsi sebaiknya dipisahkan oleh satu spasi setelah tanda koma jika diletakkan dalam baris yang sama. Contoh ditunjukkan di Gambar 1.21.
Pengaturan yang tepat dalam menuliskan pernyataan yang menggunakan lebih dari satu baris akan memudahkan kode mudah dibaca.Penjorokan (indentasi) pada pernyataan-pernyataan majemuk terhadap kurung kurawal pembuka dan kurung kurawal penutup sebaiknya dilakukan dengan jarak 2 hingga 4 spasi.Contoh ditunjukkan di Gambar 1.22.
Gambar 1.22 Penjorokan pada pernyataan majemuk
Pernyataan semacam
digitalWrite(PIN12, HIGH);
boleh ditulis menjadi beberapa baris.Hal seperti ini sangat cocok untuk pernyataan yang panjang jika hanya ditulis dalam satu baris. Contoh penulisannya semacam berikut:
digitalWrite(PIN12,
HIGH);
Penulisan-penulisan di atas lebih baik daripada
digitalWrite(PIN12,
HIGH);
Komentar
Komentar sering disertakan di sketch,terutama yang mengandung banyak baris.Kehadirannya sangat membantu pemrogram ataupun orang lain dalam memahami kode karena komentar tidak lain adalah penjelasan-penjelasan mengenai sketch atau penggalan-penggalan kode di sketch. Dalam hal ini, penjelasannya dapat berupa:
tujuan/fungsi program;
saat program dibuat atau direvisi;
keterangan-keterangan lain tentang kegunaan sejumlah pernyataan dalam program.
Seandainya sketch tidak dimaksudkan untuk dibaca orang lain, komentar tetap bermanfaat bagi penulis sketch itu sendiri. Sekalipun pemrogram memahami betul tentang yang ditulis saat ini tanpa harus menyertakan komentar, pemrogram mungkin saja lupa terhadap kode yang pernah ia tulis di suatu saat nanti. Pada keadaan seperti ini,jelas bahwa komentar sangat bermanfaat.
Suatu komentar diawali dengan //. Pada keadaan seperti ini, dimulai dari tanda tersebut hingga akhir baris akan diperlakukan sebagai komentar. Pada kode
j++; // Naikkan j sebesar satu
j++; berkedudukan sebagai pernyataan,sedangkan
// Naikkan j sebesar satu
adalah komentar.
Komentar juga bisa ditulis dengan diawali /* dan diakhiri dengan */. Simbol /*dan */boleh diletakkan pada baris yang berbeda. Hal ini memungkinkan pembuatan komentar panjang, yang melibatkan beberapa baris. Contoh:
/*————————————————–
Percobaan untuk mengontrol LED
menggunakan analogRead()
supaya memungkinkan untuk mengatur
intensitas cahayanya
————————————————–*/
Komentar di atas sebagai pengganti dari:
// ————————————————–
// Percobaan untuk mengontrol LED
// menggunakan analogRead()
// supaya memungkinkan untuk mengatur
// intensitas cahayanya
// ————————————————–
Karakter
Karakter dapat berupa huruf,digit,simbol,dan bahkan karakter kontrol (seperti spasi dan *).
·Huruf:
ABCDEFGHIJKLMNOPQRSTUVWXYZ
abedefghijklmnopqrstuvwxyz
Digit:
0123456789
Simbol dan Lain-lain:
\n*+Spasi
Pengenal(Identifier)
Pengenal adalah suatu nama yang biasa dipakai dalam pemrograman untuk menyatakan:
variabel;
· konstanta bernama;
·tipe data;
fungsi;
ataupun hal-hal lain yang dibuat oleh pemrogram.
Penamaan Pengenal
Suatu pengenal berupa satu atau beberapa karakter
huruf,
digit,
garis-bawah(_),
dan berawalan dengan huruf atau garis-bawah.
Pemberian nama pengenal sebaiknya menggunakan kata yang berarti dan mudah dibaca. Sebagai contoh pengenal
suhu_ruangan lebih mudah dipahami oleh orang daripada s
ataupun
suhu ruangan
Untuk pengenal yang melibatkan lebih dari satu kata, model punuk unta kadang digunakan. Sebagai contoh,
suhu Ruangan
adalah alternatif dari
suhu_ruangan
Aturan yang berlaku pada punuk unta:
kata pertama diawali dengan huruf kecil;
kata kedua dan seterusnya diawali dengan huruf kapital.
Tipe Data
Ada beberapa tipe data yang bisa digunakan. Tabel 1.1 mencantumkan tipe-tipe data di Arduino.
Tabel 1.1 Tipe data
Tipe Data
Keterangan
Kebutuhan Memori
boolean
Berguna untuk menyimpan data yang berkemungkinan
dua.Dalam hal ini, tipe boolean akan menyimpan nilai
true atau false saja.
1 byte
char
Berguna untuk menyatakan sebuah karakter.
1 byte
byte
Berguna untuk menyimpan data yang berkisar antara 0
sampai dengan 255.
1 byte
int
Berguna untuk menampung bilangan bulat yang berkisar
antara-32768 sampai dengan 32767.
2 byte
unsigned int
Berguna untuk menampung bilangan bulat yang berkisar
antara 0 sampai dengan 65535.
2 byte
word
Identik dengan unsigned int.
2 byte
long
Berguna untuk menampung bilangan bulat yang berkisar
antara-2.147.483.648 sampai dengan 2.147.483.647.
4 byte
unsigned long
Berguna untuk menampung bilangan bulat yang berkisar
antara 0 sampai dengan 4.294.967.295(232-1).
4 byte
float atau
d0uble
Berguna untuk menyimpan bilangan real. Angka yang
bisa disimpan dari -3.4028235E+38 sampai dengan
3.4028235E+38.Tingkat presisi hingga 6-7 digit.
4 byte
Variabel dan Konstanta
Data sebenarnya dapat dibedakan menjadi dua golongan:
variabel dan
konstanta.
Variabel berguna untuk menyimpan suatu nilai dan nilai yang berada di dalamnya dapat diubah selama program dieksekusi.llustrasi variabel diperlihatkan di Gambar 1.23.
Gambar 1.23 Isi variabel dapat diubah sewaktu program dieksekusi
Konstanta atau terkadang dinamakan literal menyatakan nilai yang tetap.Sebagai contoh, 234 adalah suatu konstanta bilangan bulat.
Mendeklarasikan Variabel
Variabel yang akan digunakan dalam program harus dideklarasikan terlebih dahulu.Pengertian deklarasi d sini berarti mengenalkan sebuah pengenal dan menentukan jenis data yang dapat disimpan di dalamnya Bentuk deklarasi variabel:
Tipe data daftar variabel;
Pada deklarasi variabel,daftar_variahol dapat berupa satu variabel atau beberapa variabel yang dipisahka dengan koma.Contoh:
int jumlah;
float suhu celcius, suhu_fahrenheit;
Pernyataan deklarasi pertama menyatakan bahwa jumlah adalah variabel bertipe int (digunakan untu menyimpan bilangan integer),sedangkan pernyataan kedua menyatakan bahwa suhu celcius da suhu_fahrenheit berjenis float (untuk menyimpan data bilangan pecahan atau titik-mengambang
Kedua variabel ditulis dengan pemisah berupa koma. Satu spasi biasa diberikan setelah koma agar kode
mudah dibaca.
Jika dikehendaki,deklarasi
float suhu celcius,suhu fahrenheit;
dapat ditulis menjadi:
float suhu celcius;
float suhu fahrenheit;
Deklarasi variabel dapat diletakkan di mana saja. Biasanya, deklarasi variabel dilakukan di tempat yang berdekatan dengan penggunaannya yang pertama kali.
Memberikan Nilai ke Variabel
Bentuk pernyataan yang digunakan untuk memberikan nilai ke variabel yang telah dideklarasikan seperti berikut:
variabel = nilai;
Pernyataan seperti di atas sering disebut sebagai pernyataan penugasan.Pada bentuk tersebut, nilai dapat diperoleh dari suatu ungkapan (pengertian ungkapan dijelaskan di belakang).
Contoh berikut memberikan nilai 0 ke variabel jumlah dan 27.5 ke suhu celcius:
jumlah = 0;
suhu_celcius=27.5;
Perlu diketahui, spasi di depan dan di belakang operator sama dengan (=) hanyalah bersifat opsional.Namun, penambahan spasi akan memberikan kejelasan, terutama kalau di sebelah kanan operator ini berupa ungkapan yang panjang,yang melibatkan beberapa operand.
Inisialisasi Variabel
Ada kalanya,variabel langsung diberi nilai awal tepat setelah dideklarasikan. Contoh:
int jumlah;
jumlah=0;
Dua pernyataan seperti itu sebenarnya dapat disingkat menjadi:
int jumlah = 0;
Cara seperti itu umum digunakan disebabkan di samping menghemat penulsan pernyataan,juga lebih memberi kejelasan (khususnya untuk variable yang perlu diberi nilai awal)
Konstanta Oktal dan Desimal
Selain dalam bentuk desimal (sistem bilangan dengan basis 10),konstanta bilangan bulat(char, int, short,dan long dapat disajikan dalam bentuk sistem oktal (sistem bilangan berbasis 8) ataupun sistem heksadesimal (sistem bilangan berbasis 16).
Konstanta Boolean
Konstanta yang menyatakan nilai benar di tipe boolean ditulis seperti berikut:
true
Adapun,konstanta yang menyatakan nilai salah ditulis sebagai berikut:
false
Konstanta Karakter
Konstanta karakter ditulis dengan awalan dan akhiran petik tunggal(‘). Contoh:
‘A’
‘5’
(*)
Karakter tertentu ditulis dengan tanda khusus. Contoh:
‘\n’ menyatakan karakter newline
‘\t’ menyatakan tab
Konstanta Integer
Konstanta integer atau bilangan bulat ditulis tanpa mengandung tanda pecahan.Tanda +untuk menyatakan bilangan positif bersifat opsional.Contoh:
-23
56
+56 (identik dengan 56)
Konstanta bertipe long ditulis dengan akhiran L atau l. Contoh:
45678901L
Konstanta bertipe unsigned long bisa ditulis dengan akhiran UL atau ul. Contoh:
234567989UL
Konstanta Oktal
Dalam sistem oktal, digit yang digunakan berkisar antara 0 sampai dengan 7. Penulisan konstanta diawali dengan 0 (nol).Contoh:
010(9 desimal)
011(10 desimal)
Konstanta Heksadesimal
Pada sistem heksadesimal,digit yang dapat dipakai berupa salah satu di antara 16 simbol berikut:
0123456789ABCDEF
Simbol A,B,C,D,E,dan F dapat dinyatakan dengan huruf kecil a,b,c,d,e,dan f.Penulisan konstanta diawali dengan Ox (nol dan x).Hubungan simbol ABCDEF dengan bilangan pada sistem desimal seperti yang
ditunjukkan di Tabel 1.2.
Tabel 1.2 Hubungan angka heksadesimal dan desimal
Heksadesimal
Desimal
Heksadesimal
Desimal
0(0000 biner)
0
0101 biner)
5
1(0001 biner)
1
6(0110 biner)
6
2(0010 biner)
2
7(0111 biner)
7
3(0011 biner)
3
8(1000 biner)
8
4(0100 biner)
4
9(1001 biner)
9
A(1010 biner)
10
D(1101 biner)
13
B(1011 biner)
11
E (1110 biner)
14
C(1100 biner)
12
F(1111 biner)
15
Contoh:
0x10(10 heksadesimal atau 16 desimal)
OxFF(FF heksadesimal atau 255 desimal)
Gambar 1.24 memperlihatkan contoh penggunaan konstanta heksadesimal untuk menyatakan angka yang
direpresentasikan dengan sejumlah LED. LED berwarna putih menyatakan hidup (on).
0011 1100=0x3C
0010 01000×24
0010 0100=0x24
0111 1110*0x7E
0110 0010=0x62
0110 0010=0x62
0110 0010=0x62
0000 0000=0x00
Gambar 1.24 Penggunaan konstanta heksadesimal untuk menyatakan huruf A
Konstanta Biner
Arduino menyediakan cara penulisan konstanta dalam bentuk biner. Dalam hal ini, deretan angka o dan yang diawali dengan B adalah konstanta biner.Contoh:
B110 identik dengan 6 dalam sistem desimal;
B10101 identik dengan 21 dalam sistem desimal.
Konstanta Titik-Mengambang
Di dalam menuliskan konstanta yang menyatakan tipe float atau d0uble, tanda pecahan yang digunala berupa titik.Contoh:konstanta 2.5 berarti 2,5 (dua setengah). Notasi E atau e boleh digunakan unt menyatakan tanda eksponen (pangkat).Contoh:
1.2E3 atau 1.2e+3
Konstanta String
Konstanta string merupakan deretan karakter yang diawali dan diakhiri dengan tanda petik-ganda Contoh:
“Resistor”
Konstanta string dengan sebuah karakter berbeda dengan konstanta karakter.Konstanta karakter diawali dan diakhiri tanda petik tunggal,sedangkan string diawali dan diakhiri tanda petik ganda. Jadi,
“a”
tidaklah sama dengan
‘a’
sebab, “a” berarti konstanta string, sedangkan ‘a’ adalah konstanta karakter.
Suatu konstanta string dapat mengandung karakter yang menggunakan tanda\(karakter escape sequence). Contoh:
“\n”
merupakan konstanta yang terdiri atas sebuah karakter newline.
Penamaan Konstanta
Konstanta boleh diberi nama. Nama konstanta bisa diwujudkan dengan menggunakan kata kunci const. Bentuk deklarasinya seperti berikut:
const tipe nama_konstanta =nilai;
Contoh:
const int PIN 12=12;
ada contoh di atas, PIN 12 adalah konstanta bernama yang bertipe int dengan nilai 12 (Gambar 1.25).
Gambar 1.25 Pendefinisian konstanta bernama dengan menggunakan const
Operator
Operator merupakan simbol yang biasa dilibatkan dalam program untuk melakukan sesuatu operasi misalnya untuk:
menjumlahkan dua nilal;
·memberikan nilai ke suatu variabel;
· membandingkan kesamaan dua nilai.
Sebagian operator tergolong dalam operator binary,yaitu operator yang dikenakan terhadap dua nila (operand).Contoh:
a+b
Simbol+merupakan operator untuk melakukan operasi penjumlahan dari kedua operand-nya (yaitu a dan b).Karena operator penjumlahan melibatkan dua operand,operator ini tergolong sebagai operator binary. Contoh lain operator terdapat pada:
-c
Simbol-(minus) adalah operator.Simbol ini termasuk sebagai operator yang hanya memiliki sebuah operand (yakni c pada contoh di atas). Operator seperti ini dinamakan unary operator.
Selain operator yang bersifat binary maupun unary, terdapat pula operator ternary, yakni operator yang melibatkan tiga operand. Operator ini dibahas di Bab 3. Tabel 1.3 memperlihatkan perbedaan dan contoh operator unary, binary, dan ternary.
Tabel 1.3 Sifat operator
Sifat
Keterangan
Contoh
Unary
Operator ini hanya melibatkan satu
operand
-1
Binary
Operator ini melibatkan dua operand
1+2
Ternary
Operator ini hanya melibatkan tiga
operand
(a>b)?a:b
Ungkapan
Ungkapan (ekspresi) dapat berupa:
pengenal;
konstanta;
fungsi;
kombinasi elemen-elemen di atas dengan operator.
Contoh ungkapan:
3+2-1
Pada ungkapan di atas,3,2,dan 1 merupakan operand dan simbol+serta-adalah operator,Nilai ungkapan sendiri adalah hasil penjumlahan 3 dan 2 dan kemudian dikurangi 1.Penjelasan visual diperlihatkan di Gambar 1.26.
Gambar 1.26 Operand dan operator
Contoh lain:
a=b+c-2
Pada ungkapan ini,a,b, dan c merupakan operand,simbol=,+dan-adalah operator.Dalam hal ini,variabel a diisi dengan hasil penjumlahan b dan c, dikurangi 1. Selanjutnya, nilai a ini menyatakan nilai ungkapan.
Operator Aritmatika
Operator untuk operasi aritmatika yang tergolong sebagai operator binary dapat dilihat di Tabel 1.4.
Tabel 1.4 Operator aritmatika yang bersifat binary
`Operator
Keterangan
Contoh
*
Perkalian
2*3
/
Pembagian
7/2
%
Sisa pembagian (modulus)
7%2
+
Penjumlahan
5+4
–
Pengurangan
5-4
Adapun operator ang tergolong sebagai operator unary ditunjukkan di Tabel 1.5.
Tabel 1.5 Operator aritmatika yang bersifat unary
Variabel
Keterangan
–
Tanda minus
-2
+
Tanda plus
+4
Operator+,-,*, dan /
Operator seperti penjumlahan,pengurangan,perkalian,dan pembagian merupakan hal yang umum. Nama sifat pada ungkapan yang melibatkan operator-operator ini juga perlu diperhatikan,Silakan lihat Tabel1
Tabel 1.6 Operasi aritmatika menggunakan operator+,-,*,dan/
Ungkapan
Hasil
Ungkapan
Hasil
7.0+2.0
7.0+2
7+2.0
7+2
9.0
9.0
9.0
9
7.0-2.0
7.0-2
7-2.0
7-2
5.0
5.0
5.0
5
7.0*2.0
7.0*2
7*2.0
7*2
14.0
14.0
14.0
14
7.0/2.0
7.0/2
7/2.0
7/2
3.5
3.5
3.5
3
Secara garis besar dapat disimpulkan bahwa operasi yang melibatkan operator+,-,*,dan/seperti beniku
Sekiranya salah satu operand berupa bilangan titik-mengambang (bilangan real),hasil ungkapa bertipe bilangan titik-mengambang.
Sekiranya kedua operand bertipe bilangan bulat, hasil ungkapan bertipe bilangan bulat.
Operator Sisa Pembagian
Operator sisa pembagian (operator modulus) yang berupa % mempunyai manfaat pada berbagai aplika Sebagai contoh,dengan menggunakan operator ini dapat dipastikan bahwa suatu bilangan rand0m ya dibangkitkan oleh sistem selalu berada antara jangkauan 0 dan 10. Contoh lain,operator ini dapat dipa sebagai dasar penentuan suatu bilangan termasuk bilangan genap atau bilangan ganjil.
Operator ini diterapkan pada operand bertipe bilangan bulat.Supaya lebih jelas,perhatikan beberapa comt
berikut:
7%2→1
Sisa pembagian bilangan 7 dengan 2 adalah 1
6%2→0
Sisa pembagian bilangan 6 dengan 2 adalah 0
8%3→1
Sisa pembagian bilangan 8 dengan 3 adalah 2
Secara prinsip, sisa pembagian x dengan y dapat diperoleh dengan menggunakan cara berikut:
Bagilah x dengan y dan menghasilkan bilangan bulat z.
Sisa pembagian x dengan y adalah x-y*z.
Sebagai contoh,8*%3 adalah 1.Hal ini dapat diperoleh dengan cara seperti berikut:
1.z=8/3=2
sisa pembagian=8-3*z=8-2*2=2
Prioritas Operator Aritmatika
Tabel 1.7 memberikan penjelasan prioritas operator-operator aritmatika. Operator yang mempunyai prioritas tinggi akan diutamakan dalam hal pengerjaan dibandingkan dengan operator yang memiliki prioritas lebih rendah.
Tabel 1.7 Prioritas operator aritmatika
Operator
Prioritas
++dan–(Khusus yang
berkedudukan sebagai awalan)
Tertinggi
Terendah
-(Unary minus)
* %/
+-(Penjumlahan dan
pengurangan)
Jika operator memiliki prioritas sama (di Tabel 1.18 terletak pada baris yang sama), operator yang terletak di sebelah kiri dalam suatu ungkapan yang akan diutamakan untuk dikerjakan terlebih dahulu.
Contoh 1:
x=2+3*2;
Pernyataan ini memberikan nilai 8 ke x disebabkan 3*2 dikerjakan terlebih dahulu (mengingat* mempunyai prioritas lebih tinggi daripada +).Pernyataan di atas identik dengan:
x=2+(3*2);
Contoh 2:
x=2*3%2;
Operator*dan% mempunyai prioritas sama.Namun,karena yang terletak di sebelah kiri adalah *, maka 2 *3 akan dikerjakan terlebih dahulu. Dengan demikian,pernyataan ini identik dengan:
x=(2*3)。2;
Tanda kurung biasa digunakan untuk mengubah urutan pengerjaan.Sebagai contoh,
x=(2+3)*2;
akan memberikan nilai 10 ke x, sebab 2+3 dikerjakan terlebih dahulu dan hasilnya baru dikalikan dengan 2.
Operator Penugasan
Operator penugasan, yang berupa simbol sama dengan (=), berguna untuk memberikan suatu nilai ke suatu variabel. Operator ini dapat dikenakan sebagal ungkapan ataupun berdiri sebagai pernyataan,
Penugasan Sederhana
Beberapa pernyataan penugasan telah diperkenalkan.Contoh:
a=1:
a-2+b:
Pada contoh pertama,variabel a diisi dengan hasil ungkapan 2 + b.
Penugasan dalam Ungkapan
Pada contoh berikut,operator penugasan dipakai untuk memberikan nilai berdasarkan ungkapan:
a=2+(b=1);
Pada contoh di atas, mula-mula variabel b diisi 1.Kemudian,variabel a diisi dengan hasil ungkapan 2+1
Operator Penurunan dan Penaikan
Berkaitan dengan operasi aritmatika, tersedia operator yang disebut sebagai operator penaikan (increme dan operator penurunan (decrement).Kedua operator ini biasa digunakan pada operand bertipe bilang bulat. Tabel 1.8 memperlihatkan simbol untuk kedua operator tersebut.
Tabel 1.8 Operator penurunan dan penaikan
Operator
Keterangan
++
Operator penaikan
—
Operator penurunan
Operator penaikan digunakan untuk menaikkan nilai variabel sebesar satu, sedangkan operator penunuma dipakai untuk menurunkan nilai variabel sebesar satu. Penempatan operator terhadap variabel da dilakukan di muka atau di belakangnya. Contoh:
x=x+1;
y=y-1;
dapat ditulis menjadi:
x++;
y–;
Pada contoh di atas,penempatan operator penaikan atau penurunan di depan atau di belakang variabelto berbeda.Namun,sesungguhnya perbedaan kedua posisi ada,walau pada contoh tersebut tidak terlihat.
Operator Bitwise (Manipulasi Bit)
Untuk keperluan memanipulasi bit, tersedia enam operator seperti yang diperlihatkan di Tabel 1.9. Prioritas seluruh operator bitwise diperlihatkan di Tabel 1.10.Seluruh operator ini hanya dapat dikenakan pada operand bertipe bilangan bulat atau karakter.
Tabel 1.9 Operator bitwise
pA0r
Keterangan
Contoh
<<
Geser bit ke kiri
25<<2
>>
Geser bit ke kanan
25>>2
&
Operasi bit DAN
25&2
1
Operasi bit ATAU
25|2
V
Operasi bit XOR
25^2
~
Operasi bit BUKAN
~25
Tabel 1.10 Prioritas operator bitwise
Variabel
Keterangan
Tertinggi
Terendah
~
>><<
&
V
–
Gambar 1.27 Penomoran bit
Operator Geser Kiri dan Geser Kanan
Operator>>dan <<berguna untuk menggeser bit bit dalam suatu bilangan bulat ke kiri atau ke kan Penggeseran bit ke kiri mempunyal efek seperti perkalian,sedangkan penggeseran ke kanan memben
efek seperti pembagian.
Operator<<
Bentuk umum pemakaian operator <<:
nilai << Jumlah bit digeser ke kiri
Pada operasi penggeseran ke kiri,setiap penggeseran sebuah bit akan memberikan pengaruh sepertiham
perkalian dengan bilangan dua.
Jika x bernilai 93,kemudian digeser ke kiri satu bit, maka hasilnya adalah 186.Penjelasannya ditunjukkan Gambar 1.28.
Gambar 1.28 Penggeseran ke kiri 1 bit
Operator>>
Bentuk umum pemakaian operator>>:
nilai>> jumlah bit digeser ke kanan
Pada operasi penggeseran ke kanan,setiap penggeseran satu bit akan memberikan pengaruh seperti halm pembagian dengan bilangan dua.Supaya lebih jelas,perhatikan contoh berikut beserta hasilnya.
Bilax bernilai 93 dan kemudian digeser ke kanan 1 bit, hasilnya adalah 46.Penjelasannya diperlihatkan Gambar 1.29.
Gambar 1.29 Penggeseran ke kanan 1 bit
Jika suatu bilangan negatif digeser ke kiri atau ke kanan, sign bit (bit paling kiri) akan dipertahankan.Artinya,suatu bilangan negatif jika nilai digeser ke kanan tidak akan berubah menjadi positif
Operator atau,dan,xor
Bentuk pemakaian operator atau (l), dan (&),dan xor (^):
operand1 operator operand2
Operasi bit dilakukan antara operand1 dan operand2 untuk posisi bit yang sama (bit 0 operand1 dengan bit 0 operand2,bit 1 operand1 dengan bit 1 operand 2, dan seterusnya).
Operator Atau
Simbol operator atau berupa |,dengan bentuk pemakaian seperti berikut:
operand1 | operand2
Pada operasi dengan operator ini, hasil operasi per bit sebagai berikut:
hasil 0 kalau kedua bit yang dioperasikan bernilai 0;
hasil 1 kalau salah satu atau dua dari bit yang dibandingkan bernilai satu.
Seluruh kemungkinan operasi dengan & diperlihatkan di Tabel 1.11
Tabel 1.11 Operasi dengan &
Bit Operand 1
Bit Operand 1
Hasil
0
0
0
0
1
1
1
0
1
1
1
1
Operator Dan
Simbol operator dan berupa &,dengan bentuk penggunaannya seperti berikut:
operandl &operand2
Pada operasi dengan dan,hasil operasi bit seperti berikut:
hasil O kalau dari dua bit yang dibandingkan ternyata ada yang bernilai 0;
hasil 1 kalau dua bit yang dibandingkan sama-sama bernilai 1.
Seluruh kemungkinan operasi dengan & diperlihatkan di Tabel 1.12.
Tabel 1.12 Operasi dengan operator bitwise dan
Bit Operand 1
Bit Operand 1
Hasil
0
0
0
0
1
0
1
0
0
1
1
1
Operator xor
Simbol operator xor (exclusive or) berupa ^,dengan bentuk penggunaannya seperti berikut:
operand1 ^ operand2
Pada operasi dengan xor,hasil operasi per bit sebagai berikut:
hasil 1 kalau satu bit dari kedua dua bit yang dibandingkan bernilai 1;
hasil 0 untuk kondisi yang lain.
Seluruh kemungkinan operasi dengan^diperlihatkan di Tabel 1.13.
Tabel 1.13 Operasi dengan operator bitwise xor
Bit Operand 1
Bit Operand 1
Hasil
0
0
0
0
1
1
1
0
1
1
1
0
Contoh Operasi dengan |. &, dan ^
Penjelasan mengenai operasi dan, atau, serta xor di atas dapat dilihat di Gambar 1.30.
Gambar 1.30 Operasi dengan |,&,dan^
Operator Komplemen
Bentuk pemakaian operator komplemen:
~operand
Operator ini mempunyai sifat membalik (mengonversi) nilai setiap bit operand. Jika bit bernilai 1, hasilnya 0.P Jika bit bernilai 0, hasilnya 1 (lihat Tabel 1.14).
Tabel 1.14 Operator komplemen
Operand
Hasil
0
1
1
0
Gambar 1.31 Operasi dengan~pada data bertipe short int
Operator Majemuk
Operator majemuk disediakan untuk memendekkan penulisan operasi penugasan semacam:
x=x+2;
y=y*4:
menjadi:
x+= 2;
K *=4;
Operator seperti+=dan *= dinamakan operator majemuk.
Tabel 1.15 mencantumkan seluruh kemungkinan operator kombinasi dalam suatu pernyataan d pernyataan padanannya.
Tabel 1.15 Operator majemuk
Operator
Contoh
Keterangan
+=
X+= 2;
Kependekan dari x=x+ 2;
-=
X-=2;
Kependekan dari x=x-2;
*=
x*-2;
Kependekan dari x=x*2;
/=
x/=2;
Kependekan dari x = x/2;
%=
x%=2;
Kependekan dari x=x% 2;
<<=
x<<=2;
Kependekan dari x=x<<2;
>>=
X2:
Kependekan darix=x>>2;
&=
x&=2;
Kependekan dari x = x&2;
=1
x|=2;
Kependekan dari x=x|2;
^=
x^=2;
Kependekan dari x=x^2;
Ungkapan Kondisi
Ungkapan kondisi atau ungkapan Boolean adalah ungkapan yang menjadi dasar bagi pernyataan berkondisi (misalnya i f,yang akan dibahas di Bab 3).Ungkapan ini memberikan nilai true (benar) atau false (salah). Hasil ungkapan berupa:
0 kalau ungkapan bernilai salah;
1 kalau ungkapan bernilai benar.
Adapun elemen yang membentuk ungkapan ini adalah operator:
relasional dan
logika.
Operator Relasional
Operator relasional atau operator pembanding biasa digunakan untuk membandingkan dua nilai. Keseluruhan operator relasional dapat dilihat di Tabel 1.16.
Tabel 1.16 Operator relasional
Operator
Keterangan
==
Sama dengan (bukan penugasan)
!=
Tidak sama dengan
>
Lebih dari
<
Kurang dari
>=
Lebih dari atau sama dengan
<=
Kurang dari atau sama dengan
Contoh ungkapan kondisi yang menggunakan operator relasional:
x==y
Hasil ungkapan tersebut bernilai:
1 kalau nilai x sama dengan nilai y;
0 kalau nilai x tidak sama dengan y.
Operator Logika
Operator logika biasa digunakan untuk menghubungkan dua ungkapan kondisi menjadi satu ungkapan kondisi.Operator-operator yang tergolong sebagai operator logika adalah:
&&(operator logika dan);
Il (operator logika atau);
!(operator logika bukan).
Operator || dan &&
Bentuk pemakaian operator || dan &&:
ungkapant 1l ungkapan2 atau ungkapant or ungkapan2
ungkapant s& ungkapan2 atau ungkapant and ungkapan2
Pada bentuk pertama, hasi ungkapan bermilai benar kalau ungkapant dan ungkapanz berila n bentuk keduia,hasil ungkapan berupa benar hanya kalau ungkapant dan ungkapan2 bernilal be 1.17 memberikan seluruh kemungkinan pada operasi dengan // dan &&.
Pada bentuk pemakaian || atau &&,biasanya ungkapan1 dan ungkapan2 dit dalam tanda kurung.Contoh:
(a==b)&&(c==d)
Sebenarnya, penambahan kurung seperti itu tidak merupakan keharusan.. Kehadirannya hanya dimaksudkan untuk mempermudah orang yang ala membacanya.Dengan perkataan lain, ungkapan tersebut dapat ditulis menjadi
a==b&&c==d
Hal ini disebabkan operator==mempunyai prioritas lebih tinggi dibandingkan &8 Berbeda halnya kalau and atau or digunakan.Kalau and atau or digunakan pada bentuk seperti(a==b)&&(c==d),tanda kurung tetap diperlukan karena priora and atau or lebih rendah daripada operator relasional seperti==.
Tabel 1.18 mencantumkan prioritas operator-operator di Arduino.
Tabel 1.18 Prioritas operator
Simbol
Nama
Pengerjaan
Prioritas
()
[]
->
·
Pemanggilan fungsi
Elemen array
Pointer ke anggota struktur
Anggota struktur, union atau kelas
–
TERTINGGI
++
—
i
~
–
+
&
sizeof
(tipe)
tipe()
Pre-increment
Post-increment
Logika bukan(NOT)
Bitwise komplemen
Minus(unary)
Plus(unary)
Alamat (address)
Ukuran tipe data
Type casting
Type casting
Kiri ke kanan
*
·
*?
()
Dereferensi C
Dereferensi C
Kurung untuk ungkapan
Kiri ke kanan
*
/
%
Perkalian
Pembagian
Sisa pembagian(modulus)
Kiri ke kanan
+
–
Penjumlahan
Pengurangan
Kiri ke kanan
<<
>>
Geser kiri
Geser kanan
Kiri ke kanan
<
>
<=
>=
Kurang dari
Lebih dari
Kurang dari atau sama dengan
Lebih dari atau sama dengan
Kiri ke kanan
==
!=
Sama dengan
Tidak sama dengan
Kiri ke kanan
&
Bitwise“dan”
Kiri ke kanan
V
Bitwise“xor”
Kiri ke kanan
1
Bitwise“atau”
Kiri ke kanan
&&
Logika“dan”
Kiri ke kanan
11
Logika“atau”
Kiri ke kanan
?:
Operator kondisi
Kiri ke kanan
=
Penugasan
Kanan ke Kiri
*=
Operator majemuk
/=
Operator majemuk
%=
Operator majemuk
+=
Operator majemuk
-=
Operator majemuk
<=
Operator majemuk
>>=
Operator majemuk
Operator majemuk
&=
Operator majemuk
^=
Operator majemuk
|=
Operator majemuk
,
Operator koma
Kiri ke kanan
TERENDAH
Fungsi yang Berhubungan dengan Bit
Sejumlah fungsi yang disediakan di Arduino berhubungan dengan bit. Sebagai contoh, Anda d mengnolkan suatu bit dengan mudah dengan menggunakan bitClear (). Silakan lihat Tabel 1.19 m mengenali fungsi-fungsi seperti itu.
Tabel 1.19 Fungsi-fungsi untuk operasi bit
Fungsi
Keterangan
bitClear(x,n)
Mengnolkan bit n pada nilai x. Tak ada nilai balik.Contoh:
byte x=B11111111;bitClear(x, 1);
Maka, bit 1 pada x dinolkan. Bentuk binernya akanberupa:11111101
bitSet(x,n)
Membuat bit n pada nilai x bernilai 1. Tak ada nilai balik.Contoh:
byte x=B11111001;bitSet(x,1);
Maka, bit 1 pada x dinolkan. Bentuk binernya akanberupa:11111011
bitWrite(x,n,b)
Membuat bit n pada nilai x bernilai b (0 atau 1).Tak adanilai balik.Contoh:
byte x =B11111001;bitSet(x,2,1);
Maka, bit 1 pada x dinolkan. Bentuk binernya akanberupa:11111101
bitRead(x,n)
Memberikan nilai balik berupa nilai bit pada posisi bit n
pada nilai x. Contoh:
byte x=B11111001;
Maka,bitRead(x, 0) memberikan nilai balik berupa
1.
bit(n)
Memberikan nilai balik berupa nilai pada posisi bit n atau identik dengan 2n.
lowByte(x)
Memberikan nilai balik berupa byte rendah suatu nilai x.
Identik dengan x & B11111111
highByte(x)
Memberikan nilai balik berupa byte tertinggi suatu nilai x
yang bertipe word.
1.12 Persiapan Hardware
Untuk kepentingan melakukan percobaan berbagai proyek yang akan dibahas mulai Bab 2, Anda perlu menyiapkan beberapa komponen seperti LED, resistor, transistor, diode, motor, saklar, dan breadboard. Breadboard (Gambar 1.32) yang disarankan digunakan adalah yang berukuran panjang supaya dapat menampung banyak komponen. Namun, jika Anda memilki kedua jenis tersebut akan lebih baik. Sekiranya komponen yang dilibatkan hanya sedikit, jenis yang berukuran kecil bisa digunakan.
Gambar 1.32 Breadboard berguna untuk memasang komponen tanpa disolder
Informasi tentang Breadboard
Breadboard memungkinkan komponen-komponen yang menyusun suatu rangkaian dapat saling dihubungkan tanpa melalui penyolderan. Penghubungan antarkomponen dapat dilakukan dengan menggunakan kabel.Berbagai jenis kabel dapat dilihat di Gambar 1.33.
Hal terpenting yang perlu diperhatikan,secara fisik lubang-lubang di breadboard memiliki hubungan seperti terlihat di gambar berikut:
Di bagian tepi atas dan tepi bawah pada gambar di atas,lubang-lubang horizontal saling terhubung, sedangkan pada bagian tengah,setiap lima lubang dalam kolom yang sama saling terhubung.
Untuk membuat koneksi antarkomponen, siapkan pula sejumlah kabel berwarna seperti yang diperlihatkan di Gambar 1.33.
(b) Kabel male to male
(c) Kabel male to female
Gambar 1.33 Kabel penghubung antarkomponen
Untuk melakukan pencarian kesalahan sekiranya suatu rangkaian tidak bekerja, Anda sebaiknya menyiapkan pula multimeter (Gambar 1.34),yang dapat digunakan untuk mengukur resistansi,arus,ataupun tegangan.