0% menganggap dokumen ini bermanfaat (0 suara)
432 tayangan16 halaman

BAB IX Pengenalan Minimum System (Arduino)

Dokumen tersebut membahas tentang pengenalan Arduino sebagai platform pembuatan prototipe elektronik yang fleksibel dan mudah digunakan. Arduino terdiri dari board mikrokontroler, perangkat lunak, dan lingkungan pengembangan terpadu. Board Arduino paling umum menggunakan mikrokontroler ATmega328 yang memiliki fitur seperti memori, input/output digital dan analog, serta dijelaskan blok diagram dan komponennya.

Diunggah oleh

Indra Toro
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
432 tayangan16 halaman

BAB IX Pengenalan Minimum System (Arduino)

Dokumen tersebut membahas tentang pengenalan Arduino sebagai platform pembuatan prototipe elektronik yang fleksibel dan mudah digunakan. Arduino terdiri dari board mikrokontroler, perangkat lunak, dan lingkungan pengembangan terpadu. Board Arduino paling umum menggunakan mikrokontroler ATmega328 yang memiliki fitur seperti memori, input/output digital dan analog, serta dijelaskan blok diagram dan komponennya.

Diunggah oleh

Indra Toro
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 16

BAB IX

Pengenalan Minimum System (Arduino)

POKOK BAHASAN
A. Hardware Board Arduino
B. Pemrograman Arduino

TUJUAN BELAJAR:
Mahasiswa dapat memahami bagian-bagian Arduino dan pemrogramannya.

A. Hardware Microcontroller Arduino

Arduino adalah platform pembuatan prototipe elektronik yang bersifat open-source


hardware yang berdasarkan pada perangkat keras dan perangkat lunak yang fleksibel dan
mudah digunakan. Arduino ditujukan bagi para seniman, desainer, dan siapapun yang tertarik
dalam menciptakan objek atau lingkungan yang interaktif. Arduino pada awalnya
dikembangkan di Ivrea, Italia. Nama Arduino adalah sebuah nama maskulin yang berarti teman
yang kuat. Platform arduino terdiri dari arduino board, shield, bahasa pemrograman arduino,
dan arduino development environment. Arduino board biasanya memiliki sebuah chip dasar
mikrokontroler Atmel AVR ATmega8 berikut turunannya.
ATMega328 memiliki fitur cukup lengkap, mulai dari kapasitas memori program dan
memori data yang cukup besar, interupsi, timer/counter, PWM, USART, TWI, analog
comparator, EEPROM internal dan juga ADC internal. Gambar 9.1 merupakan penjelasan
melalui gambar mengenai konfigurasi pin-pin yang merupakan bagian dari mikrokontoller
ATMega328.

Gambar 9.1 Konfigurasi Pin ATMega328


Arduino adalah platform pembuatan prototipe elektronik yang bersifat open-source
hardware yang berdasarkan pada perangkat keras dan perangkat lunak yang fleksibel dan
mudah digunakan. Arduino ditujukan bagi para seniman, desainer, dan siapapun yang
tertarik dalam menciptakan objek atau lingkungan yang interaktif.
Arduino pada awalnya dikembangkan di Ivrea, Italia. Nama Arduino adalah sebuah
nama maskulin yang berarti teman yang kuat. Platform arduino terdiri dari arduino board,
shield, bahasa pemrograman arduino, dan arduino development environment. Arduinoboard
biasanya memiliki sebuah chip dasar mikrokontroler Atmel AVR ATmega8 berikut
turunannya.
Arduino uno merupakan salah satu jenis rangkaian mikrokontroller yang menggunakan
system physical computing. Physical computing adalah membuat sebuah sistem atau perangkat
fisik dengan menggunakan software dan hardware yang sifatnya interaktif yaitu dapat
menerima rangsangan dari lingkungan dan merespon balik. Physical computing adalah sebuah
konsep untuk memahami hubungan yang manusiawi antara lingkungan yang sifat alaminya
adalah analog dengan dunia digital(Djuandi,2011).
Blok diagram arduino board yang sudah disederhanakan dapat dilihat pada (gambar
9.2 Shield adalah sebuah papan yang dapat dipasang diatas arduino board untuk menambah
kemampuan dari arduino board.

Gambar 9.2 Konfigurasi Pin ATMega328 pada board arduino

Arduino uno merupakan salah satu jenis rangkaian mikrokontroller yang menggunakan
system physical computing. Physical computing adalah membuat sebuah sistem atau perangkat
fisik dengan menggunakan software dan hardware yang sifatnya interaktif yaitu dapat
menerima rangsangan dari lingkungan dan merespon balik. Physical computing adalah sebuah
konsep untuk memahami hubungan yang manusiawi antara lingkungan yang sifat alaminya
adalah analog dengan dunia digital(Djuandi,2011).
Pada prakteknya konsep ini diaplikasikan dalam desain-desain alat atau projek-projek
yang menggunakan sensor dan microcontroller untuk menerjemahkan input analog ke dalam
sistem software untuk mengontrol gerakan alat-alat elektro-mekanik seperti lampu, motor dan
sebagainya. Pembuatan prototype atau prototyping adalah kegiatan yang sangat penting di
dalam prose physical computing karena pada tahap inilah seorang perancang melakukan
eksperimen dan ujicoba dari berbagai jenis komponen, ukuran, parameter, program komputer
dan sebagainyaberulang-ulang kali sampai diperoleh kombinasi yang paling tepat. Dalam hal
ini perhitungan angka-angka dan rumus yang akurat bukanlah satu-satunya faktor yang menjadi
kunci sukses di dalam mendesain sebuah alat karena ada banyak faktor eksternal yang turut
berperan, sehingga proses mencoba dan menemukan/mengoreksi kesalahan perlu melibatkan
hal-hal yang sifatnya non-eksakta.
Prototyping adalah gabungan antara akurasi perhitungan dan seni. Proses prototyping
bisa menjadi sebuah kegiatan yang menyenangkan atau menyebalkan, itu tergantung
bagaimana kita melakukannya. Misalnya jika untuk mengganti sebuah komponen, merubah
ukurannya atau merombak kerja sebuah prototype dibutuhkan usaha yang besar dan waktu
yang lama, mungkin prototyping akan sangat melelahkan karena pekerjaan ini dapat dilakukan
berulang-ulang sampai puluhan kali – bayangkan betapa frustasinya perancang yang harus
melakukan itu. Idealnya sebuah prototype adalah sebuah sistem yang fleksibel dimana
perancang bisa dengan mudah dan cepat melakukan perubahan-perubahan dan mencobanyalagi
sehingga tenaga dan waktu tidak menjadi kendala berarti. Dengan demikian harus ada sebuah
alat pengembangan yang membuat proses prototyping menjadi mudah. Pada masa lalu (dan
masih terjadi hingga hari ini) bekerja dengan hardware berarti membuat rangkaian
menggunakan berbagai komponen elektronik seperti resistor, kapasitor, transistor dan
sebagainya. Setiap komponen disambungkan secara fisik dengan kabel atau jalur tembaga
yang disebut dengan istilah “hard wired” sehingga untuk merubah rangkaian maka sambungan-
sambungan itu harus diputuskan dan disambung kembali.
Dengan hadirnya teknologi digital dan microprocessor fungsi yang sebelumnya
dilakukan dengan hired wired digantikan dengan program-program software. Ini adalah sebuah
revolusi di dalam proses prototyping. Di antara sekian banyak alat pengembangan prototype,
Arduino adalah salah satunya yang paling banyak digunakan. Arduino dikatakan sebagai
sebuah platform dari physical computing yang bersifat open source. Pertama-tama perlu
dipahami bahwa kata “platform” di sini adalah sebuah pilihan kata yang tepat.
Arduino tidak hanya sekedar sebuah alat pengembangan, tetapi ia adalah kombinasi
darihardware, bahasa pemrograman dan Integrated Development Environment (IDE) yang
canggih. IDE adalah sebuah software yang sangat berperan untuk menulis program, meng-
compile menjadi kode biner dan meng-upload ke dalam memory microcontroller. Ada banyak
projek dan alat-alat dikembangkan oleh akademisi dan profesional dengan menggunakan
Arduino, selain itu juga ada banyak modul-modul pendukung (sensor, tampilan, penggerak dan
sebagainya) yang dibuat oleh pihak lain untuk bisa disambungkan dengan Arduino.
Arduino berevolusi menjadi sebuah platform karena ia menjadi pilihan dan acuan bagi
banyak praktisi. Software lebih mudah diubah dibandingkan hardware, dengan beberapa
penekanan tombol kita dapatmerubah logika alat secara radikal dan mencoba versi ke-dua, ke-
tiga dan seterusnya dengan cepat tanpa harus mengubah pengkabelan dari rangkaian. Salah
satu yang membuat Arduino memikat hati banyak orang adalah karena sifatnya yang open
source, baik untuk hardware maupun software-nya.
Diagram rangkaian elektronik Arduino digratiskan kepada semua orang. Anda bisa
bebas men-download gambarnya, membeli komponen-komponennya, membuat PCB-nya dan
merangkainya sendiri tanpa harus membayar kepada para pembuat Arduino. Sama halnya
dengan IDE Arduino yang bisa di-download dan diinstal pada komputer secara gratis. Kita
patut berterima kasih kepada tim Arduino yang sangat dermawan membagi-bagikan
kemewahan hasil kerja keras mereka kepada semua orang.
Bahasa pemrograman dan IDE Arduino yang berkualitas tinggi dan sangat
berkelas.Arduino dikembangkan oleh sebuah tim yang beranggotakan orang-orang dari
berbagai belahan dunia. Anggota inti dari tim ini adalah: Massimo Banzi Milano, Italy; David
Cuartielles Malmoe, Sweden; Tom Igoe New York, US; Gianluca Martino Torino, Italy; David
A. Mellis Boston, MA, USA.
Arduino Uno adalah arduino board yang menggunakan mikrokontroler ATmega328.
Arduino Uno memiliki 14 pin digital (6 pin dapat digunakan sebagai output PWM), 6 input
analog, sebuah 16 MHz osilator kristal, sebuah koneksi USB, sebuah konektor sumber
tegangan, sebuah header ICSP, dan sebuah tombol reset. Arduino Uno memiliki area cakupan
yang luas untuk segala hal yang dibutuhkan untuk mendukung sebuah aplikasi yang
berbasiskan mikrokontroler. Hanya dengan menghubungkannya ke sebuah komputer melalui
USB atau memberikan tegangan DC dari baterai atau adaptor AC ke DC sudah dapat membuat
aplikasinya bekerja. Arduino Uno menggunakan ATmega16U2 yang diprogram sebagai USB-
to-serial converter untuk komunikasi serial ke komputer melalui port USB.
Adapun data teknis yang terdapat board Arduino UNO R3 adalah sebagai berikut:
● Mikrokontroler: ATmega328
● Tegangan Operasi: 5V
● Tegangan Input (recommended): 7 - 12 V
● Tegangan Input (limit): 6-20 V
● Pin digital I/O: 14 (6 diantaranya pin PWM)
● Pin Analog input: 6 input pin
● Arus DC per pin I/O: 40 mA
● Arus DC untuk pin 3.3 V: 150 mA
● Flash Memory: 32 KB dengan 0.5 KB digunakan sebagai bootloader
● SRAM: 2 KB
● EEPROM: 1 KB
● Kecepatan besaran waktu sebesar: 16 Mhz sebagai komponen untuk
(Crystall oscillator)
Untuk memberikan gambaran mengenai apa saja yang terdapat di dalam sebuah
microcontroller, pada gambar berikut ini diperlihatkan (gambar 9.3) contoh diagram blok
sederhana dari microcontroller ATmega328 (dipakai pada Arduino Uno) seperti gambar blok
diagram sederhana dibawah ini:

Gambar 9.3 Konfigurasi Pin ATMega328

Blok-blok di atas dijelaskan sebagai berikut:


Universal Asynchronous Receiver/Transmitter (UART) adalah antar muka yang digunakan
untuk komunikasi serial seperti pada RS-232, RS-422 dan RS-485.
2KB RAM pada memory kerja bersifat volatile (hilang saat daya dimatikan), digunakan oleh
variable-variabel di dalam program.
32KB RAM flash memory bersifat non-volatile, digunakan untuk menyimpan program yang
dimuat dari komputer. Selain program, flash memory juga menyimpan bootloader. Bootloader
ini yang menjembatani antara software compiler arduino dengan mikrokontroler.Dan ketika
pengguna papan mikrokontroller arduino menulis program tidak perlu banyak menuliskan
sintak bahasa C, cukup melakukan pemanggilan fungsi program, hemat waktudan pikiran.
1KB EEPROM bersifat non-volatile, digunakan untuk menyimpan data yang tidak boleh
hilang saat daya dimatikan. Tidak digunakan pada papan Arduino.
Central Processing Unit (CPU), bagian dari microcontroller untuk menjalankan setiap
instruksi dari program.
Port input/output, pin-pin untuk menerima data (input) digital atau analog,
danmengeluarkan data (output) digital atau analog.
Setelah mengenal bagian-bagian utama dari microcontroller ATmega sebagai
komponen utama, selanjutnya kita akan mengenal bagian-bagian dari papan Arduino itu
sendiri. Dengan mengambil contoh sebuah papan Arduino tipe USB, bagian-bagiannya dapat
dijelaskan sebagai berikut seperti pada (gambar 9.4) seperti gambar dibawah ini:

Gambar 9.4 Konfigurasi Pin ATMega328 arduino uno


14 pin input/output digital (0-13)
Berfungsi sebagai input atau output, dapat diatur oleh program.
Khusus untuk 6 buah pin 3, 5, 6, 9, 10 dan 11, dapat juga berfungsi sebagai pin analog output
dimana tegangan output-nya dapat diatur. Nilai sebuah pin output analog dapat diprogram
antara 0 – 255, dimana hal itu mewakili nilai tegangan 0 – 5V
USB
Berfungsi untuk:
- Memuat program dari komputer ke dalam papan
- Komunikasi serial antara papan dan komputer
- Memberi daya listrik kepada papan
Sambungan SV1
Sambungan atau jumper untuk memilih sumber daya papan, apakah dari sumber eksternal
atau menggunakan USB. Sambungan ini tidak diperlukan lagi pada papan Arduino versi
terakhir karena pemilihan sumber daya eksternal atau USB dilakukan secara otomatis
Q1 – Kristal (quartz crystal oscillator)
Jika microcontroller dianggap sebagai sebuah otak, maka kristal adalah jantung-nya karena
komponen ini menghasilkan detak-detak yang dikirim kepada microcontroller agar melakukan
sebuah operasi untuk setiap detak-nya. Kristal ini dipilih yang berdetak 16 juta
kali per detik (16MHz).
Tombol Reset S1
Untuk me-reset papan sehingga program akan mulai lagi dari awal. Perhatikan bahwa tombol
reset ini bukan untuk menghapus program atau mengosongkan microcontroller.
In-Circuit Serial Programming (ICSP)
Port ICSP memungkinkan pengguna untuk memprogram microcontroller secara langsung,
tanpa melalui bootloader. Umumnya pengguna Arduino tidak melakukan ini sehingga ICSP
tidak terlalu dipakai walaupun disediakan.
IC 1 – Microcontroller Atmega
Komponen utama dari papan Arduino, di dalamnya terdapat CPU, ROM dan RAM.
sum X1 – sumber
Jika hendak disuplai dengan sumber daya eksternal, papan Arduino dapat diberikan tegangan
DC antara 9-12V.
6 pin input analog (0-5)
Pin ini sangat berguna untuk membaca tegangan yang dihasilkan oleh sensor analog, seperti
sensor suhu. Program dapat membaca nilai sebuah pin input antara 0 – 1023, dimana hal itu
mewakili nilai tegangan 0 – 5V.

Tanpa melakukan konfigurasi apapun, begitu sebuah papan Arduino dikeluarkan dari
kotak pembungkusnya ia dapat langsung disambungkan ke sebuah komputer melalui kabel
USB. Selain berfungsi sebagai penghubung untuk pertukaran data, kabel USB ini juga akan
mengalirkan arus DC sebesar: 5 Volt kepada papan Arduino sehingga praktis tidak diperlukan
sumber daya dari luar. Saat mendapat suplai daya, lampu LED indikator daya pada papan
Arduino akan menyala menandakan bahwa ia siap bekerja.

Gambar 9.5 Komponen LED yang terdapat pada board Arduino Uno

Pada papan Arduino Uno terdapat sebuah LED kecil yang terhubung ke pin digital 13.
LED ini dapat digunakan sebagai output saat seorang pengguna membuat sebuah program
dan ia membutuhkan sebuah penanda dari jalannya program tersebut. Ini adalah cara yang
praktis saat pengguna melakukan uji coba. Umumnya microcontroller pada papan Arduino
telah memuat sebuah program kecil yang akan menyalakan LED tersebut berkedip-kedip dalam
jeda satu detik. Jadi sangat mudah untuk menguji apakah sebuah papan Arduino baru dalam
kondisi baik atau tidak, cukup sambungkan papan itu dengan sebuah komputer dan perhatikan
apakah LED indikator daya menyala konstan dan LED dengan pin-13 itu menyala berkedip-
kedip.
Kelebihan Arduino
Tidak perlu perangkat chip programmer karena di dalamnya sudah ada bootloader yang
akan menangani upload program dari komputer.
Sudah memiliki sarana komunikasi USB, sehingga pengguna Laptop yang tidak
memiliki port serial/RS323 bisa menggunakan nya.
Bahasa pemrograman relatif mudah karena software Arduino dilengkapi dengan
kumpulan library yang cukup lengkap.
Memiliki modul siap pakai (shield) yang bisa ditancapkan pada board Arduino. Misalnya
shield GPS, Ethernet, SD Card, dll.

B. Bahasa Pemrograman Arduino


Bahasa pemrograman Arduino adalah bahasa C. Tetapi bahasa ini sudah dipermudah
menggunakan fungsi-fungsi yang sederhana sehingga pemula pun bisa mempelajarinya dengan
cukup mudah. Untuk membuat program Arduino dan mengupload ke dalam board Arduino,
diperlukan software Arduino IDE (Integrated Development Enviroment) yang bisa di
download gratis di http://arduino.cc/en/Main/Software. Panduan bahasa pemograman Arduino
beserta dengan contoh-contohnya bisa dibaca di halaman
http://arduino.cc/en/Reference/HomePage.

Struktur dasar dari bahasa pemrograman Arduino merupakan salah satu yang relatif
sederhana dan hanya terdiri dari dua bagian saja. Void setup()
{
// statement;
}
void loop()
{
// statement;
} Dimana setup() adalah bagian untuk inisialisasi yang hanya dijalankan sekali di awal
program, sedangkan loop() untuk mengeksekusi bagian program yang akan
dijalankan berulang-ulang untuk selamanya.
setup() Fungsi setup() hanya di panggil satu kali ketika program pertama kali dijalankan. Ini
digunakan untuk mendefinisikan mode pin atau memulai komunikasi serial. Fungsi setup()
tetap harus diikutsertakan dalam program walaupun tidak ada
statement yang dijalankan. void setup()
{
pinMode(13,OUTPUT); // setting pin 13 sebagai output
}
loop() Setelah melakukan fungsi setup() maka Arduino secara langsung akan melakukan
fungsi loop() secara berurutan dan melakukan instruksi-instruksi yang ada dalam
fungsi loop() tersebut. void loop()
{
digitalWrite(13, HIGH); // menyalakan pin 13
delay(1000); // pause selama 1 detik
digitalWrite(13, LOW); // memadamkan pin 13
delay(1000); // pause selama 1 detik
}2
Elemen dasar
{ } begin bracket dan end bracket Bracket mendefinisikan awal dan akhir dari sebuah fungsi.
Apabila ketika memprogram tidak menyertakan end bracket secara tepat maka akan mengalami
error saat di-compile.
; semicolon
Semicolon harus diberikan pada setiap statement dan fungsi dari program yang kita buat.
Semicolon merupakan pembatas setiap statement dan fungsi program yang
dibuat. delay(500) /* baris ini akan mengalami error saat di-compile */
delay(500); /* penulisan statement yang tepat dengan semicolon */
/* */ block comment Oleh compiler, comment akan diabaikan, sehingga semua statement
yang ditulis dalam block comment tidak akan dieksekusi. /*
entah apapun ini,
akan diabaikan oleh compiler
*/
// line comment Sama halnya dengan block comment, namun yang dijadikan comment adalah
baris dimana line comment tersebut ditempatkan. // hanya baris ini yang diabaikan oleh
compiler
danBarisIniTidakDiabaikan; Contoh sebuah program Arduino yang paling sederhana
/*
Program ini dapat menghidupkan dan memadamkan
sebuah lampu LED yang dihubungkan ke pin 13
pada Arduino dengan selang waktu
selama 1000 milidetik (1 detik)
*/
void setup()
{
pinMode(13, OUTPUT);
}
void loop()
{
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}3
2. Variabel Pengertian dan deklarasi Variabel adalah suatu pengenal dalam program yang
berguna untuk menyimpan nilai dari tipe data tertentu. Untuk menggunakannya kita harus
mendeklarasi- kannya terlebih dahulu agar compiler dapat mengenalinya. Tipe data
namaVariabel = 0; Contoh deklarasi variabel dengan tipe data yang berbeda
int x; // variabel x dengan tipe data int
char y; // variabel y dengan tipe data char Contoh deklarasi beberapa variabel sekaligus int x,
y, z; // ini sah-sah saja, asalkan tipe data
// dari variabel ketiganya sama Contoh variabel untuk menyimpan nilai tertentu
int variabelBebas = 0; // mendefinisikan sebuah variabel
// bernama variabelBebas dengan nilai
// awal 0
variabelBebas = analogRead(2); // menyimpan nilai yang ada di analog
// pin 2 ke inputVariable Penamaan variabel Ada beberapa ketentuan yang seyogyanya
diperhatikan dalam penamaan variabel pada pemrograman Arduino dan bahasa C pada
umumnya. Bahasa C bersifat case-sensitive
int skir70;
int SKIR70;
// mereka berdua akan dianggap sebagai dua variabel yang berbeda Nama variabel tidak
boleh diawali dengan angka
int 70suka_tawuran; // salah
int sma70_dulu_suka_tawuran; // benar Nama variabel tidak boleh mengandung spasi int
sma70 sialan; // salah
int sma70_teladan; // benar Nama variabel tidak boleh mengandung simbol (!, @, #, $,*, &, ^
,%, dst) int sma70_brengs*k!; // salah
int sma70_berjaya; // benar4
Tipe data Tipe data adalah sesuatu yang digunakan untuk merepresentasikan jenis dari suatu
nilai. Misal 10 adalah bilangan bulat (int), 6.78 adalah tipe bilangan riil (float), „A‟ adalah
tipe karakter (char), selain itu juga terdapat data diskrit true/false yang lebih dikenal sebagai
tipe logika (boolean). Keempat tipe data tersebut merupakan tipe data dasar dan yang paling
sering dipakai. Contoh deklarasi variabel dengan tipe data tertentu int bilanganBulat = 32760;
// bilangan bulat dengan rentang data dari -32768 sampai 32767
float bilanganRiil = 3.45656;
// bilangan riil yang dapat mengandung desimal
boolean contohBoolean = true;
// hanya bisa bernilai false atau true
char karakter = 'a';
// menyimpan nilai karakter
String banyakKarakter = "SKIR70 Jakarta";
// kumpulan dari beberapa karakter Contoh penggunaan variabel pada sebuah program
/*
Program ini dapat menghidupkan dan memadamkan
sebuah lampu LED yang dihubungkan ke pin 13
pada Arduino dengan selang waktu
selama 1000 milidetik (1 detik)
*/
int ledPin = 13;
int delayTime = 1000;
void setup()
{
pinMode(ledPin, OUTPUT);
}
void loop()
{
digitalWrite(ledPin, HIGH);
delay(delayTime);
digitalWrite(ledPin, LOW);
delay(delayTime);
}5
Lingkup variabel Dalam sebuah program, lingkup variabel ditentukan oleh tempat dimana
variabel
tersebut dideklarasikan. Lingkup variabel dibedakan menjadi dua, yaitu variable lokal dan
variabel global. Variabel global ialah variabel yang dideklarasikan di luar suatu fungsi, baik
fungsi setup(), fungsi loop(), maupun fungsi pendukung lainnya dalam suatu program. Variabel
ini bisa diakses dan dikenali oleh fungsi manapun yang di dalamnya terdapat variabel ini.
Variabel lokal dideklarasikan di dalam sebuah fungsi sehingga hanya bisa diakses dan dikenali
oleh fungsi itu saja. Dengan kata lain fungsi lain tidak dapat mengenali atau mengakses variabel
yang dideklarasikan oleh fungsi lainnya tersebut. Contoh lingkup variabel int
iniVariabelGlobal;
// variabel tersebut akan dikenali oleh semua fungsi
void setup()
{
int iniVariabelLokal;
// hanya dikenali oleh fungsi setup() ini saja
iniVariabelGlobal = 1;
// ini sah, karena variabel tersebut dikenali oleh semua fungsi
}
void loop()
{
int iniJugaVariabelLokal;
// hanya dikenali oleh fungsi loop() ini saja
iniVariabelGlobal = 1;
// ini sah, karena variabel tersebut dikenali oleh semua fungsi
iniVariabelLokal = 1;
// ini tidak sah, karena variabel tersebut tidak dikenali di fungsi ini
} Konstanta Konstanta adalah sebuah tetapan yang tidak dapat diubah nilainya ketika
program
sudah berjalan. Untuk menginisialisasinya kita dapat menggunakan makro
“#define”. #define namaKonstanta nilaiKonstanta // bentuk dasar konstanta
#define konstantaBebas 0 // mendefinisikan konstanta dengan nama
// konstantaBebas dengan nilai 06
3. Fungsi Fungsi adalah blok pemrograman yang mempunyai nama dan mempunyai statement
yang akan dieksekusi ketika fungsi tersebut dipanggil. Fungsi void setup() dan void loop() telah
dibahas di atas dan pembuatan fungsi yang lain akan dibahas selanjutnya. Contoh deklarasi
fungsi tipe Data namaFungsi (parameter)
{
// statement;
} Dimana tipeData menyatakan tipe data dari nilai balik yang dimilikinya. Penambahan
parameter dalam sebuah fungsi tidak diwajibkan, sehingga suatu fungsi diperbolehkan untuk
tidak memilikinya. Nilai balik Nilai balik merupakan nilai yang dikembalikan oleh suatu fungsi
saat fungsi tersebut telah selesai dijalankan. Suatu fungsi dapat memiliki nilai balikdan
dapat pula tidak memiliki nilai balik. Suatu fungsi tanpa nilai balik memiliki void sebagai tipe
datanya, sementara suatu fungsi dengan nilai balik dapat bertipe int, double, float, maupun
apapun yang sesuai dengan tipe data dari nilai yang dikembalikannya. Contoh fungsi tanpa nilai
balik void nyalakanLED ()
{
digitalWrite(13,HIGH);
} Contoh pengunaan fungsi tanpa nilai balik pada program
int ledHijau = 12, ledMerah = 13, delaytime = 500;
void setup(){}
void loop()
{
nyalakanHijau();
delay(delaytime);
nyalakanMerah();
delay(delaytime);
}
void nyalakanHijau()
{
digitalWrite(ledHijau,HIGH);
digitalWrite(ledMerah,LOW);
}
void nyalakanMerah()
{
digitalWrite(ledMerah,HIGH);
digitalWrite(ledHijau,LOW);
}7
Contoh fungsi dengan nilai balik
int fungsiNilaiBalik()
{
int nilai = 50;
return nilai;
} Contoh penggunaan fungsi dengan nilai balik pada program
#define LED 13
void setup(){}
void loop()
{
analogWrite(LED,nilaiBalik());
}
int nilaiBalik()
{
int a; // deklarasi variabel lokal a bertipe integer
a = 150; // nilai a sama dengan 150
return a; // return nilai a sebagai nilai balik
} Parameter Parameter adalah suatu variabel yang berfungsi untuk menyimpan nilai yang akan
dikirimkan ke dalam suatu fungsi. Dengan adanya parameter, sebuah fungsi dapatbersifat
dinamis. Parameter terbagi atas dua macam, yaitu parameter formal dan parameter aktual.
Contoh dasar penggunaan parameter pada fungsi dalam program:
void setup(){}
void loop()
{
tambahSeratus(155); // parameter aktual
analogWrite(13, tambahSeratus());
}
void tambahSeratus(int parameterMasukan) // parameter formal
{
int hasil;
hasil = parameterMasukan + 100;
} Apabila dihubungkan sebuah lampu pada pin 13, maka lampu tersebut akan menyala
dengan terang. Hal ini dikarenakan Arduino memberikan nilai 255 kepada lampu tersebut. Nilai
255 didapat dari hasil pertambahan antara 155 dengan 100.

118

Anda mungkin juga menyukai