Anda di halaman 1dari 9

SMKN 4 PADALARANG

Kegiatan Pembelajaran : PERULANGAN PADA


BAHASA PEMROGRAMAN MIKROKONTROLLER
A. Kompetensi Dasar
3.13 Menerapkan Bahasa Pemrograman Mikrokontroler.
4.13 Menggunakan Bahasa pemrograman mikrokontroler
B. Indikator Pencapaian Kompetensi
3.13.1. Menentukan proses berjalannya program percabangan bahasa C pada
mikrokontroller
3.13.2. Memodifikasi proses berjalannya program perulangan bahasa C pada
mikrokontroller
4.13.1. Mengembangkan program perulangan bahasa C pada mikrokontroller
4.13.2. Membuat program perulangan bahasa C pada mikrokontroller
C. Tujuan
Setelah mengikuti menyelesaikan materi Fungsi dan Prosedure Pada Program C++,
siswa diharapkan dapat:
1. Peserta didik dapat menentukan proses berjalannya program perulangan bahasa C
pada mikrokontroller secara faktual dan konseptual melalui pengamatan dan
diskusi secara jujur, bertanggung jawab dan santun.
2. Peserta didik dapat Memodifikasi proses berjalannya program perulangan bahasa C
pada mikrokontroller secara faktual dan konseptual melalui pengamatan dan
diskusi secara jujur, bertanggung jawab dan santun.
3. Peserta didik dapat mengembangkan program perulangan bahasa C pada
mikrokontroller secara prosedural dalam ranah konkret melalui pengamatan,
diskusi dan praktikum secara jujur, disiplin, bertanggung jawab dan santun.
4. Peserta didik dapat membuat program perulangan bahasa C pada mikrokontroller
secara prosedural dalam ranah konkret melalui pengamatan, diskusi dan
praktikum secara jujur, disiplin, bertanggung jawab dan santun.

Modul Teknik Pemrograman Mikroprosesor dan Mikrokontroller


D. Uraian Materi
1. Arduino
Arduino merupakan kit perangkat elektronik yang bersifat open source yang
dirancang khusus dengan kemampuan komputasi yang dapat diaplikasikan dalam
berbagai bidang, khususnya sabagai pengendali. Arduino sendiri di dalamnya
terdapat chip mikrokontroller AVR dan memiliki software tersendiri untuk
memprogramnya.
Arduino menggunakan pemrograman bahasa C yang dapat di program dengan
batuan program arduino. Selain program, arduino sendiri memiliki beberapa fitur
pada hardwarenya sesuai dengan tipe arduino yang digunakan.

Gambar 1 Tipe Arduino

Perbedaan yang paling mencolok pada beberapa tipe arduino di atas adalah
mengenali jumlah port I/O yang tersedia. Beikut ini contoh port yang terdapat pada
arduino UNO.

Gambar 2 Arduino UNO


Power (USB / Barrel Jack)
Setiap papan Arduino membutuhkan cara untuk terhubung ke sumber daya.
Arduino UNO dapat diaktifkan dari kabel USB yang berasal dari komputer Anda
atau catu daya dinding (seperti ini) yang diakhiri dengan jack barel. Pada gambar
di atas koneksi USB berlabel (1) dan jack laras diberi label (2).
Pin (5V, 3.3V, GND, Analog, Digital, PWM, AREF)
Pin pada Arduino Anda adalah tempat di mana Anda menghubungkan kabel
untuk membangun sirkuit (mungkin bersamaan dengan papan tempat memotong
roti dan beberapa kawat. Mereka biasanya memiliki 'header' plastik hitam yang
memungkinkan Anda untuk hanya memasukkan kabel tepat ke papan. Arduino
memiliki beberapa jenis pin, yang masing-masing dilabeli di papan dan digunakan
untuk fungsi yang berbeda.
GND (3): Singkatan dari 'Ground'. Ada beberapa pin GND di Arduino, yang
salah satunya dapat digunakan untuk menghubungkan ke sirkuit Anda.
5V (4) & 3.3V (5): Seperti yang Anda duga, pin 5V memasok daya 5 volt, dan
pin 3,3V memasok daya 3,3 volt. Sebagian besar komponen sederhana yang
digunakan dengan Arduino berjalan dengan gembira dari 5 atau 3,3 volt.
Digital (7): Di seberang pin analog adalah pin digital (0 hingga 13 pada UNO).
Pin ini dapat digunakan untuk input digital (seperti memberi tahu jika tombol
ditekan) dan output digital (seperti menyalakan daya LED).
PWM (8): Anda mungkin telah memperhatikan tilde (~) di sebelah beberapa
pin digital (3, 5, 6, 9, 10, dan 11 pada UNO). Pin ini bertindak sebagai pin digital
normal, tetapi juga dapat digunakan untuk sesuatu yang disebut Pulse-Width
Modulation (PWM). Kami memiliki tutorial tentang PWM, tetapi untuk saat ini,
anggap pin ini mampu mensimulasikan output analog (seperti memudarkan LED
masuk dan keluar).
AREF (9): Singkatan dari Referensi Analog. Sebagian besar waktu Anda dapat
meninggalkan pin ini sendirian. Kadang-kadang digunakan untuk mengatur
tegangan referensi eksternal (antara 0 dan 5 Volts) sebagai batas atas untuk pin
input analog.
Tombol Atur ulang
Sama seperti Nintendo asli, Arduino memiliki tombol reset (10). Menekannya
untuk sementara akan menghubungkan pin reset ke ground dan me-restart kode
yang dimuat pada Arduino. Ini bisa sangat berguna jika kode Anda tidak berulang,
tetapi Anda ingin mengujinya berulang kali. Berbeda dengan Nintendo yang asli,
meniup Arduino biasanya tidak memperbaiki masalah.
Indikator Daya LED
Tepat di bawah dan di sebelah kanan kata "UNO" di papan sirkuit Anda, ada
LED kecil di sebelah kata 'ON' (11). LED ini akan menyala setiap kali Anda
mencolokkan Arduino ke sumber listrik. Jika lampu ini tidak menyala, ada
kemungkinan besar ada sesuatu yang salah. Saatnya memeriksa ulang sirkuit
Anda!
LED TX RX
TX adalah kependekan dari pengiriman, RX adalah kependekan dari
penerimaan. Tanda-tanda ini muncul sedikit di elektronik untuk menunjukkan pin
yang bertanggung jawab untuk komunikasi serial. Dalam kasus kami, ada dua
tempat di Arduino UNO di mana TX dan RX muncul - sekali dengan pin digital 0
dan 1, dan kedua kalinya di sebelah TX dan LED indikator RX (12). LED ini akan
memberi kita beberapa indikasi visual yang bagus setiap kali Arduino kami
menerima atau mentransmisikan data (seperti ketika kami memuat program baru
ke papan tulis).
IC utama
Benda hitam dengan semua kaki logam adalah IC, atau Integrated Circuit (13).
Anggap saja sebagai otak Arduino kita. IC utama pada Arduino sedikit berbeda
dari jenis papan ke jenis papan, tetapi biasanya dari garis ATmega IC dari
perusahaan ATMEL. Ini bisa menjadi penting, karena Anda mungkin perlu
mengetahui jenis IC (bersama dengan jenis papan Anda) sebelum memuat
program baru dari perangkat lunak Arduino. Informasi ini biasanya dapat
ditemukan secara tertulis di sisi atas IC. Jika Anda ingin tahu lebih banyak tentang
perbedaan antara berbagai IC, membaca lembar data seringkali merupakan ide
yang bagus.
Regulator Tegangan
Regulator tegangan (14) sebenarnya bukan sesuatu yang Anda dapat (atau
harus) berinteraksi dengan Arduino. Tetapi berpotensi bermanfaat untuk
mengetahui bahwa itu ada dan untuk apa itu. Regulator tegangan melakukan apa
yang dikatakannya - ia mengontrol jumlah tegangan yang dibiarkan masuk ke
papan Arduino. Anggap saja sebagai semacam penjaga gerbang; itu akan
mengubah tegangan ekstra yang dapat membahayakan sirkuit. Tentu saja, ia
memiliki batasnya, jadi jangan menghubungkan Arduino Anda dengan apa pun
yang lebih besar dari 20 volt.
2. Arduino 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.
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 3 ArduinoIDE

3. Struktur Perulangan

Ada 3 macam pernyataan yang dapat digunakan untuk melakukan perulangan


dalam proses pemograman arduino yaitu

a. Pernyataan for
Pernyataan “for” digunakan untuk mengulang suatu blok program yang
terdapat di dalam kurung kurawal setelah pernyataan “for”. Format penulisan
pernyataan “for” adalah sebagai berikut :
for (inisiasi; test kondisi; proses inkremental/dekremental)
{pernyataan yang akan diulang;}
Penjelasan :

Flowchart untuk pernyataan “for”

Gambar 4 Flowchart for

Inisiasi dilakukan pertama – tama ketika pernyataan “for” dijalankan dan hanya
dilakukan satu kali saja yaitu pada saat awal pernyataan “for” dijalankan. Selama
proses pengulangan terjadi, selalu dilakukan test kondisi untuk mengetahui apakah
variabel masih masuk dalam range yang ditentukan atau masih bernilai “benar” atau
tidak. Setelah proses test kondisi, variabel di inkremental atau dekremental sesuai
dengan persamaan yang diberikan. Pengulangan terus berlangsung hingga test kondisi
“salah”. Bila nilai test kondisi “salah”, maka proses pengulangan dihentikan dan
program lanjut membaca pernyataan berikutnya.
Contoh Program
int PWMpin = 10;
void setup()
{
pinMode(PWMpin, OUTPUT);
}

void loop()
{
int i;
for(i=0; i<=255; i++)
{analogWrite(PWMpin,i);}
}
Penjelasan
Pada contoh program diatas, pertama-tama program melakukan deskripsi yaitu
menyatakan “PWMpin” adalah bilangan bulat (integer) dan sebagai perwujudan dari
pin 10. Pada bagian setup diatur supaya “PWMpin” menjadi pin output. Pada bagian
program utama (loop), terlebih dahulu dideklarasi sebuah variabel i sebagai bilangan
bulat (integer). Kemudian dilakukan pengulangan dengan menggunakan pernyataan
“for”. Nilai inisiasi awal untuk variabel i adalah i=0, kemudian dilakukan test kondisi
i<255. Selama nilai variabel i < 255, pengulangan terus dilakukan hingga variabel i >
255. Kemudian dilakukan proses inkremental dengan menaikkan nilai variabel i sebesar
1. Pernyataan yang diulang adalah “analogWrite(PWMpin,i)” yaitu mengeluarkan
output PWM dengan nilai dari 0 hingga 255.

b. Pernyataan While

Pernyataan “while” akan memerintahkan program untuk melakukan pengulangan terus


menerus dan tak terhingga, sampai nilai test kondisi yang terdapat di dalam kurung ()
tercapai. Format penulisan untuk pernyataan pengulangan “while” adalah :
while(test kondisi)
{ pernyataan / program ; }
Test kondisi adalah sebuah bilangan boolean yang menyatakan salah atau benar.
Flowchart untuk pernyataan “while”

Gambar 5 Flowchart While

Contoh Program
int var ;
void loop()
{
var = 0;
while(var < 200)
{
// suatu pernyataan yang akan dilakukan berulang-ulang hingga 200 kali
var++;
}
}
Pada contoh program di atas, pertama-tama dideskripsikan terlebih dahulu suatu
variabel “var” sebagai bilangan integer. Kemudian dalam program utama, variabel
“var” diuji apakah memenuhi “var<200”. Jika hasil pengujian benar, maka pernyataan
yang ada dalam blok “while” akan dieksekusi dan nilai variabel “var” akan dinaikan 1.
Kemudian program berulang kembali. Pengulangan dilakukan hingga variabel “var”
tidak memenuhi var<200.
c. Pernyataan do-while
Pernyataan pengulangan “do-while” hampir sama dengan pernyataan “while”,
bedanya bila pada pernyataan “while” , test kondisi diuji dahulu, dan bila test kondisi
bernilai benar maka pernyataan yang ada di dalam blok “while” akan dieksekusi,
kemudian test kondisi akan diinkremental. Pada pernyataan “do-while”, kondisi
menjadi terbalik, yaitu pernyataan utama akan dieksekusi terlebih dahulu, setelah itu
baru test kondisi diuji, jika test kondisi benar maka pernyataan utama akan diulang,
dan jika salah program akan keluar dari blok “do-while”. Format penulisan pernyataan
“do- while” adalah sebagai berikut.
do { //pernyataan utama;}
while(test kondisi)
Flowchart untuk pernyataan “do-while”

Gambar 6 Pernyataan do-while

Contoh Program
do { delay(50);
x = readSensors(); }
while (x < 100);
Pada contoh program di atas, pertama-tama program akan melakukan delay
selama 50 milidetik menungga hingga sensor stabil. Kemudian program akan membaca
sensor dan menyimpannya dalam variabel x. Kemudian variabel x akan diuji apakah
lebih kecil dari 100 atau tidak. Jika nilai x lebih kecil dari 100, maka program akan
melakukan pengulangan (kembali melakukan pembacaan sensor), tetapi jika nilai x
lebih besar dari 100, maka program akan keluar dari blok “do-while” untuk melakukan
perintah yang lain.

E. Rangkuman
1. Penggunaan struktur perulangan digunakan untuk mempercepat proses pembuatan
2. Strukut for maupun while merupakan struktur perulangan dengan fungsi sama.
3. Penggunaan perulangan akan mempermudah proses counting pada kondisi
tertentu.

F. Daftar Pustaka
1. Hanif Al Fatta, 2006, Dasar Pemrograman C++, Yogyakarta : Andi
2. Buaya Instrument, 2019, Belajar Program Arduino untuk Pemula Lengkap Beserta
Fungsinya, http://buaya-instrument.com/blog-buaya-instrument/Belajar-Program-
Arduino-untuk-Pemula-Lengkap-Beserta-Fungsinya
3. Sinauarduino, 2016, Mengenal Arduino Software (IDE),
https://www.sinauarduino.com/artikel/mengenal-arduino-software-ide/

Anda mungkin juga menyukai