Top Banner
Tutorial Singkat Bahasa Pemrograman Arduino JUNE 22, 2011 ZERFANI YULIAS 28 COMMENTS Arduino menggunakan pemrograman dengan bahasa C. Berikut ini adalah sedikit penjelasan yang ditujukan kepada anda yang hanya mempunyai sedikit pengalaman pemrograman dan membutuhkan penjelasan singkat mengenai karakter bahasa C dan software Arduino. Untuk penjelasan yang lebih mendalam, web Arduino.cc adalah sumber yang lengkap. Struktur Setiap program Arduino (biasa disebut sketch) mempunyai dua buah fungsi yang harus ada. void setup( ) { } Semua kode didalam kurung kurawal akan dijalankan hanya satu kali ketika program Arduino dijalankan untuk pertama kalinya. void loop( ) { } Fungsi ini akan dijalankan setelah setup (fungsi void setup) selesai. Setelah dijalankan satu kali fungsi ini akan dijalankan lagi, dan lagi secara terus menerus sampai catu daya (power) dilepaskan. Syntax Berikut ini adalah elemen bahasa C yang dibutuhkan untuk format penulisan. //(komentar satu baris) Kadang diperlukan untuk memberi catatan pada diri sendiri apa arti dari kode-kode yang dituliskan. Cukup menuliskan dua buah garis miring dan apapun yang kita ketikkan dibelakangnya akan diabaikan oleh program. /* */(komentar banyak baris) Jika anda punya banyak catatan, maka hal itu dapat dituliskan pada beberapa baris sebagai komentar. Semua hal yang terletak di antara dua simbol tersebut akan diabaikan oleh program. { }(kurung kurawal) Digunakan untuk mendefinisikan kapan blok program mulai dan berakhir (digunakan juga pada fungsi dan pengulangan). ;(titk koma)
40

Tutorial Singkat Bahasa Pemrograman Arduino

Feb 21, 2016

Download

Documents

Gindra Winaldi

tutorial pemrograman arduino
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Tutorial Singkat Bahasa Pemrograman Arduino

Tutorial Singkat Bahasa Pemrograman ArduinoJUNE 22, 2011   ZERFANI YULIAS   28 COMMENTS

Arduino menggunakan pemrograman dengan bahasa C. Berikut ini adalah sedikit penjelasan yang ditujukan kepada anda yang hanya mempunyai sedikit pengalaman pemrograman dan membutuhkan penjelasan singkat mengenai karakter bahasa C dan software Arduino. Untuk penjelasan yang lebih mendalam, web Arduino.cc adalah sumber yang lengkap.StrukturSetiap program Arduino (biasa disebut sketch) mempunyai dua buah fungsi yang harus ada.

void setup( ) {   } Semua kode didalam kurung kurawal akan dijalankan hanya satu kali ketika program Arduino

dijalankan untuk pertama kalinya. void loop( ) {   } Fungsi ini akan dijalankan setelah setup (fungsi void setup) selesai. Setelah dijalankan satu

kali fungsi ini akan dijalankan lagi, dan lagi secara terus menerus sampai catu daya (power) dilepaskan.SyntaxBerikut ini adalah elemen bahasa C yang dibutuhkan untuk format penulisan.

//(komentar satu baris) Kadang diperlukan untuk memberi catatan pada diri sendiri apa arti dari kode-kode yang

dituliskan. Cukup menuliskan dua buah garis miring dan apapun yang kita ketikkan dibelakangnya akan diabaikan oleh program.

/*   */(komentar banyak baris) Jika anda punya banyak catatan, maka hal itu dapat dituliskan pada beberapa baris sebagai

komentar. Semua hal yang terletak di antara dua simbol tersebut akan diabaikan oleh program.

{   }(kurung kurawal) Digunakan untuk mendefinisikan kapan blok program mulai dan berakhir (digunakan juga

pada fungsi dan pengulangan). ;(titk koma) Setiap baris kode harus diakhiri dengan tanda titik koma (jika ada titik koma yang hilang maka

program tidak akan bisa dijalankan).VariabelSebuah program secara garis besar dapat didefinisikan sebagai instruksi untuk memindahkan angka dengan cara yang cerdas. Variabel inilah yang digunakan untuk memindahkannya.

Page 2: Tutorial Singkat Bahasa Pemrograman Arduino

int (integer) Digunakan untuk menyimpan angka dalam 2 byte (16 bit). Tidak mempunyai angka desimal

dan menyimpan nilai dari -32,768 dan 32,767. long (long) Digunakan ketika integer tidak mencukupi lagi. Memakai 4 byte (32 bit) dari memori (RAM)

dan mempunyai rentang dari -2,147,483,648 dan 2,147,483,647. boolean (boolean) Variabel sederhana yang digunakan untuk menyimpan nilai TRUE (benar)

atauFALSE (salah). Sangat berguna karena hanya menggunakan 1 bit  dari RAM. float (float) Digunakan untuk angka desimal (floating point). Memakai 4 byte (32 bit) dari RAM dan

mempunyai rentang dari -3.4028235E+38 dan 3.4028235E+38. char (character) Menyimpan 1 karakter menggunakan kode ASCII (misalnya ‘A’ = 65). Hanya memakai 1 byte

(8 bit) dari RAM.Operator MatematikaOperator yang digunakan untuk memanipulasi angka (bekerja seperti matematika yang sederhana).

= Membuat sesuatu menjadi sama dengan nilai yang lain (misalnya: x = 10 * 2, x sekarang

sama dengan 20). % Menghasilkan sisa dari hasil pembagian suatu angka dengan angka yang lain (misalnya: 12

% 10, ini akan menghasilkan angka 2). + Penjumlahan – Pengurangan * Perkalian / Pembagian

Operator PembandingDigunakan untuk membandingkan nilai logika.

== Sama dengan (misalnya: 12 == 10 adalah FALSE (salah) atau 12 == 12 adalah TRUE

(benar)) != Tidak sama dengan (misalnya: 12 != 10 adalah TRUE (benar) atau 12 != 12 adalah FALSE

(salah)) < Lebih kecil dari (misalnya: 12 < 10 adalah FALSE (salah) atau 12 < 12 adalah FALSE (salah)

atau 12 < 14 adalah TRUE (benar)) >

Page 3: Tutorial Singkat Bahasa Pemrograman Arduino

Lebih besar dari (misalnya: 12 > 10 adalah TRUE (benar) atau 12 > 12 adalah FALSE (salah) atau 12 > 14 adalah FALSE (salah))Struktur PengaturanProgram sangat tergantung pada pengaturan apa yang akan dijalankan berikutnya, berikut ini adalah elemen dasar pengaturan (banyak lagi yang lain dan bisa dicari di internet).

1. if..else, dengan format seperti berikut ini:if (kondisi) { }else if (kondisi) { }else { }Dengan struktur seperti diatas program akan menjalankan kode yang ada di dalam kurung kurawal jika kondisinya TRUE, dan jika tidak (FALSE) maka akan diperiksa apakah kondisi pada else if dan jika kondisinya FALSE maka kode pada else yang akan dijalankan.2. for, dengan format seperti berikut ini:for (int i = 0; i < #pengulangan; i++) { }Digunakan bila anda ingin melakukan pengulangan kode di dalam kurung kurawal beberapa kali, ganti #pengulangan dengan jumlah pengulangan yang diinginkan. Melakukan penghitungan ke atas dengan i++ atau ke bawah dengan i–.Digital1. pinMode(pin, mode)Digunakan untuk menetapkan mode dari suatu pin, pin adalah nomor pin yang akan digunakan dari 0-19 (pin analog 0-5 adalah 14-19). Mode yang bisa digunakan adalahINPUT atau OUTPUT.2. digitalWrite(pin, value)Ketika sebuah pin ditetapkan sebagai OUTPUT, pin tersebut dapat dijadikan HIGH(ditarik menjadi 5 volts) atau LOW (diturunkan menjadi ground).3. digitalRead(pin)Ketika sebuah pin ditetapkan sebagai INPUT maka anda dapat menggunakan kode ini untuk mendapatkan nilai pin tersebut apakah HIGH (ditarik menjadi 5 volts) atau LOW(diturunkan menjadi ground).AnalogArduino adalah mesin digital tetapi mempunyai kemampuan untuk beroperasi di dalam alam analog (menggunakan trik). Berikut ini cara untuk menghadapi hal yang bukan digital.

1. analogWrite(pin, value)Beberapa pin pada Arduino mendukung PWM (pulse width modulation) yaitu pin 3, 5, 6, 9, 10, 11. Ini dapat merubah pin hidup (on)atau mati (off) dengan sangat cepat sehingga membuatnya dapat berfungsi layaknya keluaran analog. Value (nilai) pada format kode tersebut adalah angka antara 0 ( 0% duty cycle ~ 0V) dan 255 (100% duty cycle ~ 5V).2. analogRead(pin)Ketika pin analog ditetapkan sebagai INPUT anda dapat membaca keluaran voltase-nya. Keluarannya berupa angka antara 0 (untuk 0 volts) dan 1024 (untuk 5 volts).

Page 4: Tutorial Singkat Bahasa Pemrograman Arduino

Cara Membuat Flowchart Sistem Dengan Benar

07MEI

Bagi anda yang sedang ingin membuat sistem, pada umumnya membutuhkan flowchart sebagai bahan analisan untuk perancangan suatu sistem. Jika pembuatan flowchart salah atau kurang benar maka akan berakibat tidak sempurnanya sistem atau program yang dibuat. Berikut adalah informasi mengenai cara membuat fflowchart dengan baik dan benar.

Pengertian Flowchart :  Bagan alir (flowchart) adalah bagan (chart) yang menunjukkan alir (flow) di dalam program atau prosedur sistem secara logika. Bagan alir digunakan terutama untuk alat bantu komunikasi dan untuk dokumentasi.Berikut adalah simbol simbol flowchart yang harus diketahui :

Symbol Off-line Connector ( Simbol untuk keluar/masuk prosedure atau proses dalam lembar/halaman yang lain)

Symbol Connector (Simbol untuk keluar/masuk prosedur atau proses dalam lembar/halaman yang sama)

Symbol Process (Simbol yang menunjukkan pengolahan yang dilakukan oleh komputer)

Symbol Manual Operation (Simbol yang menunjukkan pengolahan yang tidak dilakukanoleh komputer)

Page 5: Tutorial Singkat Bahasa Pemrograman Arduino

Symbol Decision (Simbol untuk kondisi yang akan menghasilkan beberapa kemungkinan jawaban/aksi)

Symbol Predefined Process (Simbol untuk mempersiapkan penyimpanan yang akan digunakan sebagai tempat pengolahan di dalam storage)

Symbol Terminal (Simbol untuk permulaan atau akhir dari suatu program)

Symbol Off-line Storage (Simbol yang menunjukkan bahwa data di dalam symbol ini akan disimpan)

Symbol Manual Input  (Simbol untuk pemasukan data secara manual on-line keyboard)

Symbol Keying Operation (Simbol operasi dengan menggunakan mesin yang mempunyai keyboard)

Input-output symbols

menyatakan jenis peralatan yang digunakan sebagai media input atau output.

Symbol input-output (Symbol yang menyatakan proses input dan output tanpa tergantung dengan jenis peralatannya)

Symbol magnetic-tape unit (Symbol yang menyatakan input berasal pita magnetic atau output disimpan ke pita magnetic)

Symbol punched card (Symbol yang menyatakan input berasal dari kartu atau output ditulis ke kartu)

Symbol disk and on-line storage (Symbol untuk menyatakan input berasal dari disk atau output disimpan ke disk)

Page 6: Tutorial Singkat Bahasa Pemrograman Arduino

Symbol display (Symbol yang menyatakan peralatan output yang digunakan yaitu layar, plotter, printer, dan sebagainya)

Symbol dokumen (symbol yang menyatakan input berasal dari dokumen dalam bentuk kertas atau output dicetak ke kertas)

Pedoman Membuat Flowchart

Bila seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan, seperti:

1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri kekanan.

2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat dimengerti oleh pembacanya.

3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.

4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja

5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.

6. Lingkup dan range dari aktifitas yang sedang digambarkan harusditelusuri dengan hati-hati.

7. Percabangan-percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan pada flowchart yang sama. Simbol konektor harus digunakan dan percabangannya diletakan pada halaman yang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitan dengan sistem.

8. Gunakan simbol-simbol flowchart yang standar.

Contoh Flowchart :

-Flowchart Program Bilangan ganjil/genap

Page 7: Tutorial Singkat Bahasa Pemrograman Arduino
Page 8: Tutorial Singkat Bahasa Pemrograman Arduino

Cara Membuat Flow chart yang benarAnalisis Sistem Informasi – Pedoman Membuat FlowchartDitulis pada 13 Januari 2010

 

 

 

 

 

 

11 Votes

 

Pada materi Analisis Sisitem Informasi (ASI) ini akan dibahas tentang :

Pengertian/Definisi Flowchart Jenis-jenis Flowchart Bagan alir sistem (systems flowchart). Bagan alir dokumen (document flowchart). Bagan alir skematik (schematic flowchart) Bagan alir program (program flowchart) Bagan alir proses (process flowchart). Simbol-simbol flowchart Pedoman membuat Flowchart

Pengertian/Definisi FlowchartBagan alir  (flowchart) adalah bagan  (chart) yang menunjukkan alir  (flow) di dalam program atau prosedur sistem secara logika. Bagan alir digunakan terutama untuk alat bantu komunikasi dan untuk dokumentasi.

Page 9: Tutorial Singkat Bahasa Pemrograman Arduino

Jenis-jenis FlowchartAda beberapa jenis flowchart diantaranya:1.  Bagan alir sistem (systems flowchart).2.  Bagan alir dokumen (document flowchart).3.  Bagan alir skematik (schematic flowchart).4.  Bagan alir program (program flowchart).5.  Bagan alir proses (process flowchart).

System FlowchartSystem flowchart dapat didefinisikan sebagai bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem. Bagan ini menjelaskan urut-urutan dari prosedur-prosedur yang ada di dalam sistem. Bagan alir sistem menunjukkan apa yang dikerjakan di sistem.

Document FlowchartBagan alir dokumen  (document flowchart)  atau disebut juga bagan alir formulir  (form  flowchart)  atau  paperwork flowchart merupakan bagan alir yang menunjukkan arus dari laporan dan formulir termasuk tembusan-tembusannya.

Schematic FlowchartBagan alir skematik (schematic flowchart) merupakan bagan alir yang mirip dengan bagan alir sistem, yaitu untuk menggambarkan prosedur di dalam sistem. Perbedaannya adalah, bagan alir skematik selain menggunakan simbol-simbol bagan alir sistem, juga menggunakan gambar-gambar komputer dan peralatan lainnya yang digunakan. Maksud penggunaan gambar-gambar ini adalah untuk memudahkan komunikasi kepada orang yang kurang paham dengan simbol-simbol bagan alir. Penggunaan gambar-gambar  ini  memudahkan untuk dipahami, tetapi sulit dan lama menggambarnya.

Program FlowchartBagan alir program  (program flowchart)  merupakan bagan yang menjelaskan secara rinci langkah-langkah dari proses program. Bagan alir program dibuat dari derivikasi bagan alir sistem.Bagan alir program dapat terdiri dari dua macam, yaitu bagan alir logika program  (program logic flowchart)  dan bagan alir program komputer terinci  (detailed computer program flowchart).  Bagan alir logika program digunakan untuk menggambarkan tiap-tiap langkah di dalam program komputer secara logika. Bagan alat- logika program ini dipersiapkan oleh analis sistem. Gambar berikut menunjukkan bagan alir logika program. Bagan alir program komputer terinci  (detailed computer program flow-chart) digunakan untuk menggambarkan instruksi-instruksi program komputer secara terinci. Bagan alir ini dipersiapkan oleh pemrogram.

Process FlowchartBagan alir proses  (process flowchart)  merupakan bagan alir yang banyak digunakan di teknik industri. Bagan alir ini juga berguna bagi analis sistem untuk menggambarkan proses dalam suatu prosedur.

Simbol/Notasi Flowchart

Page 10: Tutorial Singkat Bahasa Pemrograman Arduino

Dipakai sebagai alat Bantu menggambarkan proses di dalam programDibagi menjadi tiga kelompok :

Flow Direction Symbolsdipakai untuk menggabungkan antara symbol yang satu   dengan symbol lainnya

Symbol Off-line Connector ( Simbol untuk keluar/masuk prosedure atau proses dalam lembar/halaman yang lain)

Symbol Connector (Simbol untuk keluar/masuk prosedur atau proses dalam   lembar/halaman yang sama)Processing symbolsMenunjukkan jenis operasi pengolahan dalam suatu prosedur

Symbol Process (Simbol yang menunjukkan pengolahan yang dilakukan oleh komputer)

Symbol Manual Operation (Simbol yang menunjukkan pengolahan yang  tidak dilakukanoleh komputer)

Symbol Decision (Simbol untuk kondisi yang akan menghasilkan beberapa   kemungkinan jawaban/aksi)--

Symbol Predefined Process (Simbol untuk mempersiapkan penyimpanan yang akan digunakan sebagai tempat pengolahan di dalam storage)

Symbol Terminal (Simbol untuk permulaan atau akhir dari suatu program)-

Symbol Off-line Storage (Simbol yang menunjukkan bahwa data di dalam symbol ini akan disimpan)-

Symbol Manual Input (Simbol untuk pemasukan data secara manual on-line keyboard)

Symbol Keying Operation (Simbol operasi dengan menggunakan mesin yang mempunyai keyboard)Input-output symbolsmenyatakan jenis peralatan yang digunakan sebagai media input atau output.

Page 11: Tutorial Singkat Bahasa Pemrograman Arduino

Symbol input-output (Symbol yang menyatakan proses input dan output tanpa tergantung dengan jenis peralatannya)

Symbol magnetic-tape unit (Symbol yang menyatakan input berasal pita magnetic atau output disimpan ke pita magnetic)-

Symbol punched card (Symbol yang menyatakan input berasal dari kartu atau output ditulis ke kartu)-

Symbol disk and on-line storage (Symbol untuk menyatakan input berasal dari disk atau output disimpan ke disk)

Symbol display (Symbol yang menyatakan peralatan output yang digunakan yaitu layar, plotter, printer, dan sebagainya)

Symbol dokumen (symbol yang menyatakan input berasal dari dokumen dalam bentuk kertas atau output dicetak ke kertas)

Pedoman Membuat FlowchartBila seorang analis dan programmer akan membuat flowchart, ada beberapa petunjuk yang harus diperhatikan, seperti:

1. Flowchart digambarkan dari halaman atas ke bawah dan dari kiri kekanan.2. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat dimengerti oleh pembacanya.3. Kapan aktivitas dimulai dan berakhir harus ditentukan secara jelas.4. Setiap langkah dari aktivitas harus diuraikan dengan menggunakan deskripsi kata kerja5. Setiap langkah dari aktivitas harus berada pada urutan yang benar.6. Lingkup dan range dari aktifitas yang sedang digambarkan harusditelusuri dengan hati-hati. Percabangan-percabangan yang memotong aktivitas yang sedang digambarkan tidak perlu digambarkan pada flowchart yang sama. Simbol konektor harus digunakan dan percabangannya diletakan pada halaman yang terpisah atau hilangkan seluruhnya bila percabangannya tidak berkaitan dengan sistem.7. Gunakan simbol-simbol flowchart yang standar.Contoh-contoh Flowchart

Page 12: Tutorial Singkat Bahasa Pemrograman Arduino

Contoh Flowchart Program

Contoh Flowchart Program - Menentukan Bilangan Ganjil/Genap

Penggunaan predefined processes dapat digunakan untuk menyederhanakan flowchart system yang complex

Page 13: Tutorial Singkat Bahasa Pemrograman Arduino

Flowchar Sistem untuk predefined process yang diberi nama Check shipment untuk Flowchart diatas

Page 14: Tutorial Singkat Bahasa Pemrograman Arduino

Algoritma dan Flowchart, Dasar Pemrograman Gung Eka  12:07 PM with 47  

Tujuan Pembelajaran

Diharapkan dapat:

1.  Mengerti tentang algoritma

2.  Membuat algoritma dari suatu permasalahan

3.  Mengerti tentang flowchart

4.  Membuat flowchart dari suatu permasalahan

Pendahuluan

1.  Komputer adalah alat bantu untuk menyelesaikan masalah

2.  Dalam menyelesaikan masalah dengan komputer perlu merumuskan langkah-langkah

penyelesaian masalah dalam sekumpulan instruksi

3.  sekumpulan instruksi yang dimengerti oleh komputer disebut dengan program

Bahasa Pemrograman

1.  Program harus ditulis dalam suatu bahasa yang dimengerti oleh komputer yaitu dalam

bahasa pemrograman, dibedakan menjadi:

·         Bahasa tingkat rendah (low level language):

                        Bahasa yang berorientasi ke mesin.

·         Bahasa tingkat tinggi (high level language):

                       Bahasa yang berorientasi ke manusia (seperti bahasa inggris). Contoh

bahasa Pascal, bahasa C, dll.

2.  Program yang ditulis dalam bahasa pemrograman akan diterjemahkan ke dalam bahasa

mesin (kenal dengan biner digit) dengan menggunakan penerjemah.

             Penerjemah:

Page 15: Tutorial Singkat Bahasa Pemrograman Arduino

·         Interpreter : menerjemahkan baris per baris instruksi. Contoh bahasa Basic.

·         Compiler : menerjemahkan setelah seluruh instruksi ditulis. Contoh bahasa Pascal,

bahasa C/C++, dll.

Algoritma

Arti umum adalah serangkaian urutan langkah-langkah yang tepat, logis, terperinci, dan

terbatas untuk menyelesaikan suatu masalah yang disusun secara sistematis.

1.  Algoritma adalah inti dari ilmu komputer

2.  Algoritma adalah urutan-urutan dari instruksi atau langkah-langkah untuk menyelesaikan

suatu masalah

3.  Algoritma adalah blueprint dari program

4.  Sebaiknya disusun sebelum membuat program

5.  Kriteria suatu algoritma:

·         Ada input dan output

·         Efektifitas dan efisien

·         Terstruktur

Contoh:

Algoritma TUKAR ISI BEJANA

Diberikan 2 buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B berisi

larutan berwarna biru. Tukarkan isi kedua bejana itu sedemikian sehingga bejana A berisi

larutan warna biru dan bejana B berisi larutan berwarna merah.

Deskripsi:

1.  Tuangkan larutan dari bejana A ke dalam bejana B

2.  Tuangkan larutan dari bejana B ke dalam bejana A

Algoritma TUKAR ISI BEJANA di atas tidak menghasilkan pertukaran yang benar. Langkah

di atas tidak logis, hasil pertukaran yang terjadi adalah pertukaran kedua larutan tersebut.

Page 16: Tutorial Singkat Bahasa Pemrograman Arduino

Untuk itu pertukaran isi dua bejana, diperlukan sebuah tambahan sebagai tempat

penampungan sementara, misalnya bejana C. Maka algoritma untuk menghasilkan

pertukaran yang benar adalah sebagai berikut:

Diberikan dua buah bejana A dan B, bejana A berisi larutan berwarna merah, bejana B berisi

larutan berwarna biru. Tukarkan isi kedua bejana itu sedemikian hingga bejana A berisi

larutan berwarna biru dan bejana B berisi larutan berwarna merah.

Deskripsi:

1.  Tuangkan larutan dari bejana A ke dalam bejana C.

2.  Tuangkan larutan dari bejana B ke dalam bejana A.

3.  Tuangkan larutan dari bejana C ke dalam bejana B.

Ciri Penting Algoritma

1.  Algoritma harus berhenti setelah menjalankan sejumlah langkah terbatas.

2.  Setiap langkah harus didefinisikan dengan tepat dan tidak berarti-dua (ambiguitas).

3.  Algortima memiliki nol atau lebih masukan.

4.  Algoritma memiliki nol atau lebih keluaran.

5.  Algoritma harus efektif (setiap langkah sederhana sehingga dapat dikerjakan dalam

waktu yang masuk akal).

Memrogram dan Bahasa Pemrograman:

1.  Belajar memrogram adalah belajar tentang metode pemecahan masalah, kemudian

menuangkannya dalam suatu notasi tertentu yang mudah dibaca dan dipahami.

2.  Belajar bahasa pemrograman adalah memakai suatu bahasa, aturan, tata bahasanya,

instruksi-instruksinya, tata cara pengoperasian compiler-nya untuk membuat program yang

ditulis dalam bahasa itu saja.

Notasi Algoritma:

Page 17: Tutorial Singkat Bahasa Pemrograman Arduino

1.  Penulisan algoritma tidak tergantung dari spesifikasi bahasa pemrograman dan komputer

yang mengeksekusinya. Notasi algoritma bukan notasi bahasa pemrograman tetapi dapat

diterjemahkan ke dalam berbagai bahasa pemrograman.

2.  Notasi algoritma dapat berupa:

·         Uraian kalimat deskriptif (narasi):

Contoh:

Algoritma kelulusan mahasiswa

Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60

maka mahasiswa tersenut dinyatakan lulus, jika nilai lebih kecil dari 60 maka dinyatakan

tidak lulus.

Deskripsi:

Baca nama dan nilai mahasiswa

            Jika nilai >= 60 maka

            Keterangan = lulus

                  Tetapi jika salah

                  Keterangan = tidak lulus

            Tulis nama dan keterangan.

Tahapan Pembuatan Program:

1.  Mendefinisikan masalah dan menganalisanya. Mencangkup : tujuan pembuatan,

parameter yang digunakan, fasilitas yang disediakan, algoritma yang diterapkan, dan

bahasa pemrograman yang digunakan.

2.  Merealisasikan dengan langkah-langkah sebagai berikut:

Page 18: Tutorial Singkat Bahasa Pemrograman Arduino

Contoh Algoritma:

1.  Mengirim surat kepada teman:

·         Tulis surat pada secarik kertas surat

·         Ambil sampul surat

·         Masukkan surat ke dalam sampul

·         Tutup sampul surat dengan perekat

·         Jika kita ingat alamat teman tersebut, maka tulis alamat surat pada sampul

·         Jika tidak ingat, lihat buku alamat, kemudian tulis alamat surat pada sampul

·         Tempel prangko pada sampul

·         Bawa sampul ke kantor pos untuk diposkan

2.  Menentukan apakah suatu bilangan merupakan bilangan ganjil atau bilangan genap:

·         Masukkan sebuah bilangan sembarang

·         Bagi bilangan tersebut dengan 2

Page 19: Tutorial Singkat Bahasa Pemrograman Arduino

·         Hitung sisa hasil bagi pada langkah 2

·         Bila sisa hasil sama dengan 0, maka bilangan itu adalah bilangan genap

·         Jika hasil bagi sama dengan 1, maka bilangan itu adalah bilangan ganjil

Flowchart

1.  Flowchart adalah bagan-bagan yang mempunyai arus menggambarkan langkah-langkah

penyelesaian suatu masalah

2.  Merupakan cara penyajian dari suatu algoritma

3.  Ada 2 macam flowchart:

·         System flowchart:

                       Urutan proses dalam system dengan menunjukkan alat media input, output

serta jenis penyimpanan dalam proses pengolahan data.

·         Program flowchart:

                       Urutan instruksi yang digambarkan dengan symbol tertentu untuk

memecahkan masalah dalam suatu program.

Contoh program Flowchart

Page 20: Tutorial Singkat Bahasa Pemrograman Arduino

Simbol-simbol Flowchart

1.  Flow Direction Symbols (simbol penghubung alur)

2.  Processing Symbols (simbol proses)

3.  Input-Output Symbols (simbol input-output)

Tabel Simbol-simbol Flowchart

Page 21: Tutorial Singkat Bahasa Pemrograman Arduino

Pembuatan Flowchart

1.  Tidak ada kaidah yang baku

2.  Flowchart = gambaran hasil analisa suatu masalah

3.  Flowchart dapat bervariasi antara satu pemrograman dengan pemrograman lainnya.

4.  Secara garis besar ada 3 bagian utama:

·         Input

·         Proses

·         Output

5.  Hindari pengulangan yang tidak perlu dan logika yang berbelit sehingga jalannya proses

menjadi singkat

6.  Jalannnya proses digambarkan dari atas ke bawah dan diberikan tanda panah untuk

memperjelas.

7.  Sebuah Flowchart diawali dari satu titik START dan diakhiri dengan End.

Page 22: Tutorial Singkat Bahasa Pemrograman Arduino

Pseudocode:

1.  Diberikan nama dan nilai mahasiswa, jika nilai tersebut lebih besar atau sama dengan 60

maka mahasiswa tersebut dinyatakan lulus jika tidak maka dinyatakan tidak lulus.

Deklarasi:

Nama          : String

Nilai            : Integer

Keterangan  : String

      Deskripsi:

            Read (nama, nilai)

            if nilai >= 60 then

            Keterangan = 'lulus'

            else

            Keterangan = 'tidak lulus'

            write (nama, keterangan)

Aturan Penulisan Teks Algoritma

1.  Judul Algoritma

          Bagian yang terdiri atas nama algoritma dan penjelasan (spesifikasi) tentang

algoritma tersebut. Nama sebaiknya singkat dan menggambarkan apa yang dilakukan oleh

algoritma tersebut.

2.  Deklarasi

          Bagian untuk mendefinisikan semua nama yang digunakan di dalam program. Nama

tersebut dapat berupa nama tetapan, peubah, tipe, prosedure, dan fungsi.

3.  Deskripsi

          Bagian ini berisi uraian langkah-langkah penyelesaian masalah yang ditulis dengan

menggunakan notasi yang akan dijelaskan selanjutnya.

Page 23: Tutorial Singkat Bahasa Pemrograman Arduino

Contoh Pseudocode:

1.  Algoritma Luas_Keliling_Lingkaran (ini merupakan judul algoritma)

          {

Menghitung luas dan keliling untuk ukuran jari-jari tertentu. Algoritma menerima masukkan

jari-jari lingkaran, menghitung luas dan kelilingnya, dan mencetak luas lingkaran ke piranti

keluaran

          }      (ini spesifikasi algoritma)

2.  Deklarasi

const phi = 3.14 {nilai konstanta phi}

R          : real {jari-jari lingkaran}

Luas     : real {luas lingkaran}

Keliling : real {keliling lingkaran}

3.       Deskripsi

Read (R)

Luas     = phi * R * R

Keliling       = 2 * phi * R

Write (luas, keliling)

Materi ini saya dapat dari pembelajaran kuliah waktu semester 1. Baru sempat saya posting.

Mohon maaf jika posting ini ada beberapa yang sama dengan sumbernya.

Page 24: Tutorial Singkat Bahasa Pemrograman Arduino

Belajar Pemograman Arduino Diposkan oleh AF HERU di 06.33 - 3 komentar

Tampilan awal software arduino

Pemrograman arduinoBaiklah kita akan bahas bahasa pemrogramannya, seperti bahasa pemrograman tingkat

menegah pada umumnya arduino pun sama memiliki alur algoritma yang mirip yang beda

adalah cara penulisan sintaknya.

structure pemrogramanstructure

Structure dasar dari bahasa pemrograman arduino itu sederhana hanya terdiri dari dua

bagian.

Page 25: Tutorial Singkat Bahasa Pemrograman Arduino

void setup( ) { // Statement; } void loop( ) { // Statement; }

Dimana setup( ) 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 di jalankan. Ini

digunakan untuk pendefinisian mode pin atau memulai komunikasi serial. Fungsi setup()

harus di ikut sertakan dalam program walaupun tidak ada statement yang di jalankan.

void setup(){pinMode(13,OUTPUT); // mengset ‘pin’ 13 sebagai output}

loop

Setelah melakukan fungsi setup() maka secara langsung akan melakukan fungsi loop()

secara berurutan dan melakukan instruksi-instruksi yang ada dalam fungsi loop().\

void loop(){digitalWrite(13, HIGH); // nyalakan ‘pin’ 13delay(1000); // pause selama 1 detikdigitalWrite(13, LOW); // matikan ‘pin’ 13

Page 26: Tutorial Singkat Bahasa Pemrograman Arduino

delay(1000); /// pause selama 1 detik}

function

Function (fungsi) adalah blok pemrograman yang mempunyai nama dan mempunyai

statement yang akan di eksekusi ketika function di panggil. Fungsi void setup() dan void

loop() telah di bahas di atas dan pembuatan fungsi yang lain akan di bahas selanjutnya.

Cara pendeklarasian function

type functionName(parameters) { // Statement; }

Contoh:

int delayVal() { int v; // membuat variable ‘v’ bertipe integer v = analogRead(pot); // baca harga potentiometer v /= 4; // konversi 0-1023 ke 0-255 return v; // return nilai v }

Pada contoh di atas fungsi tersebut memiliki nilai balik int (integer), karena kalau tidak

menghendaki adanya nilai balik maka type function harus void.

Page 27: Tutorial Singkat Bahasa Pemrograman Arduino

{ } curly braces

Curly brace mendefinisikan awal dan akhir dari sebuah blok fungsi. Apabila ketika

memprogram dan progremer lupa memberi curly brace tutup maka ketika di compile akan

terdapat laporan error.

 ; semicolon

Semicolon harus di berikan pada setiap statement program yang kita buat ini merupakan

pembatas setiap statement program yang di buat.

/*...*/ blok comment

Semua statement yang di tulis dalam block comments tidak akan di eksekusi dan tidak akan

di compile sehingga tidak mempengaruhi besar program yang di buat untuk di masukan

dalam board arduino.

// line comment

Sama halnya dengan block comments, line coments pun sama hanya saja yang di jadikan

komen adalh perbaris.

Variable

Variable adalah sebuah penyimpan nilai yang dapat di gunakan dalam program. Variable

dapat di rubah sesuai dengan instruksi yang kita buat. Ketika mendeklarisikan variable harus

di ikut sertakan type variable serta nilai awal variable. 

Type variableName = 0;

Contoh 

Page 28: Tutorial Singkat Bahasa Pemrograman Arduino

Int inputVariable = 0; // mendefinisikan sebuah variable bernama inputVariable dengan nilai awal 0 

inputVariable = analogRead(2); // menyimpan nilai yang ada di analog pin 2 ke inputVariable

variable scope

sebuah variable dapat di deklarasikan pada awal program sebelum void setup(), secara

local di dalam sebuah function, dan terkadang di dalam sebuah block statement

pengulangan.

Sebuah variable global hanya satu dan dapat di gunakan pada semua block function dan

statement di dalam program. Variable global di deklarasikan pada awal program sebelum

fungstion setup().

Sebuah variable local di deklarasikan di setiap block function atau di setiap block statement

pengulangan dan hanya dapat di gunakan pada block yang bersangkutan saja.

Contoh penggunaan:

int value; // ‘value’ adalah variable global dan dapat di gunakan pada semua block funtion

void setup(){ // no setup needed}

Page 29: Tutorial Singkat Bahasa Pemrograman Arduino

void loop(){ for (int i=0; i<20;) // 'i' hanya dapat di gunakan dalam pengulangan saja {i++;} float f; // 'f' sebagai variable local}

Data typeBiasanya tipe data ini di gunakan untuk komunikasi wireless

byte

type byte dapat menyimpan 8-bit nilai angka bilangan asli tanapa koma. Byte memiliki range

0 – 255.

Byte biteVariable = 180; // mendeklarasikan ‘biteVariable’ sebagai type byte

integer

Integer adalah tipe data yang utama untuk menyimpan nilai bilangan bulat tanpa koma.

Penyimpanan integer sebesar 16-bit dengan range 32.767 sampai -32.768.

Int integerVariable = 1600; // mendeklarasikan ‘integerVariable’ sebagai type integer

Page 30: Tutorial Singkat Bahasa Pemrograman Arduino

long

Perluasan ukuran untuk long integer, penyimpanan long integer sebesar 32-bit dengan

range 2.147.483.647 sampai -2.147.483.648

Long longVariable = 500000; // mendeklarasikan ‘longVariable’ sebagai type long

float

Float adalah tipe data yang dapat menampung nilai decimal, float merupakan penyimpan

yang lebih besar dari integer dan dapat menyimpan sebesar 32-bit dengan range

3.4028235E+38 sampai -3.4028235E+38

Float floatVariable = 3.14; // mendeklarasikan ‘floatVariable’ sebagai type float

array

Array adalah kumpulan nilai yang dapat di akses dengan index number, nilai yang terdapat

dalam array dapat di panggil dengan cara menuliskan nama array dan index number. Array

dengan index 0 merupakan nilai pertama dari array. Array perlu di deklarasikan dan kalau

perlu di beri nilai sebelum di gunakan. 

Int arraysName[] = {nilai0, nilai1, nilai2 . . . }

Contoh penggunaan array: 

Int arraySaya[] = {2,4,6,8,10}x = arraySaya[5];

Page 31: Tutorial Singkat Bahasa Pemrograman Arduino

// x sekarang sama dengan 10

Operator aritmeticaritmeticoperator aritmatik terdiri dari penjumlahan, pengurangan, pengkalian, dan pembagian. 

y = y + 3;x = x - 8; i = i * 5; r = r / 9;

dalam menggunakan operan aritmatik harus hati-hati dalam menentukan tipe data yang

digunakan jangan sampai terjadi overflow range data.

compound assignments

Compound assignments merupakan kombinasi dari aritmatic dengan sebuah variable. Ini

biasanya dipakai pada pengulangan.

x ++; // sama seperti x = x + 1 atau menaikan nilai x sebesar 1 x --; // sama seperti x = x - 1 atau mengurangi nilai x sebesar 1 x += y; // sama seperti x = x + y x -= y; // sama seperti x = x – yx *= y; // sama seperti x = x * yx /= y; // sama seperti x = x / y

comparison

Statement ini membadingkan dua variable dan apabila terpenuhi akan bernilai 1 atau true.

Statement ini banyak digunakan dalam operator bersyarat.

x == y; // x sama dengan y

Page 32: Tutorial Singkat Bahasa Pemrograman Arduino

x != y; // x tidak sama dengan yx < y; // x leboh kecil dari yx > y; // x lebih besar dari yx <= y; // x lebih kecil dari sama dengan yx >= y; // x lebih besar dari sama dengan y

logic operator

operator logical digunakan untuk membandingkan 2 expresi dan mengembalikan nilai balik

benar atau salah tergantung dari operator yang di gunakan. Terdapat 3 operator logical

AND,OR, dan NOT, yang biasanya di gunakan pada if statement.

Contoh penggunaan:

Logical AND

If ( x > 0 && x < 5) // bernilai benar apabila kedua operator pembanding terpenuhi

Logical OR

If ( x > 0 || y > 0) // bernilai benar apabila salah satu dari operator pembanding terpenuhi

Logical NOT

If ( !x > 0 ) // benilai benar apabila ekspresi operator salah

konstanta

Arduino mempunyai beberapa variable yang sudah di kenal yang kita sebut konstanta. Ini

membuat memprogram lebih mudah untuk di baca. Konstanta di kelasifikasi berdasarkan

group.

Page 33: Tutorial Singkat Bahasa Pemrograman Arduino

true/false

Merupakan konstanta Boolean yang mendifinisikan logic level. False mendifinisikan 0 dan 

True mendifinisikan 1.

If ( b == TRUE );{//doSomething}

high/low

Konstanta ini mendifinisikan aktifitas pin HIGH atau LOW dan di gunakan ketika membaca

dan menulis ke digital pin. HIGH di definisikan sebagai 1 sedangkan LOW sebagai 0.

digitalWrite( 13, HIGH );

input/output

Konstanta ini digunakan dengan fungsi pinMode() untuk mendifinisikam mode pin digital,

sebagai input atau output

pinMode( 13, OUTPUT );

Flow control

if

If Operator if mengtest sebuah kondisi seperti nilai analog sudah berada di bawah nilai yang

kita kehendaki atau belum, apabila terpenuhi maka akan mengeksekusi baris program yang

ada dalam brackets kalau tidak terpenuhi maka akan mengabaikan baris program yang ada

dalam brackets.

Page 34: Tutorial Singkat Bahasa Pemrograman Arduino

If ( someVariable ?? value ){//DoSomething;}

if... else

Operator if…else mengtest sebuah kondisi apabila tidak sesuai dengan kondisi yang

pertama maka akan mengeksekusi baris program yang ada di else.

If ( inputPin == HIGH ){//Laksanakan rencana A;}Else{//Laksanakan rencana B;}

for

Operator for digunakan dalam blok pengulangan tertutup.

For ( initialization; condition; expression ){ //doSomethig;}

while

Operator while akan terus mengulang baris perintah yang ada dalam bracket sampai

ekspresi sebagai kondisi pengulangan benilai salah.

Page 35: Tutorial Singkat Bahasa Pemrograman Arduino

While ( someVariable ?? value ){ //doSomething;}

do... while

Sama halnya dengan while() hanya saja pada operator Do…while tidak melakukan

pengecekan pada awal tapi di akhir, sehingga otomatis akan melakukan satu kali baris

perintah walaupun pada awalnya sudah terpenuhi.

Do{//doSomething;} While ( someVariable ?? value );

Digital I/O

Input / Output Digital pada breadboard arduino ada 14, pengalamatnya 0 - 13, ada saat

tertentu I/O 0 dan 1 tidak bisa di gunakan karena di pakai untuk komunikasi serial, sehingga

harus hati-hati dalam pengalokasian I/O.

pinMode(pin, mode)

digunakan dalam void setup() untuk mengkonfigurasi pin apakah sebagai Input atau Output.

Arduino digital pins secara default di konfigurasi sebagai input sehingga untuk merubahnya

harus menggunakan operator pinMode(pin, mode).

Page 36: Tutorial Singkat Bahasa Pemrograman Arduino

pinMode (pin, OUTPUT); // mengset pin sebagai outputdigitalWrite(pin, HIGH); // pin sebagai source voltage

digitalRead(pin)

membaca nilai dari pin yang kita kehendaki dengan hasil HIGH atau LOW. 

Value = digitalRead(pin); // mengset ‘value’ sama dengan pin

digitalWrite(pin, value)

digunakan untuk mengset pin digital. Pin digital arduino mempunyai 14 ( 0 – 13 ).

digitalWrite ( pin, HIGH ); // set pin to HIGH

Analog I/O

Input / Ouput analog pada breadboard arduino ada 6 pengalamatnya 0 - 5 

analogRead(pin)

membaca nilai pin analog yang memiliki resolusi 10-bit. Fungsi ini hanya dapat bekerja pada

analog pin (0-5). Hasil dari pembacaan berupa nilai integer dengan range 0 sampai 1023.

Value = analogRead(pin); // mengset ‘value’ sama dengan nilai analog pin

analogWrite(pin, value)

mengirimkan nilai analog pada pin analog. 

Page 37: Tutorial Singkat Bahasa Pemrograman Arduino

analogWrite(pin, value); // menulis ke pin analog

Timedelay(ms)

Menghentikan program untuk sesaat sesuai dengan yang di kehendaki, satuanya dalam

millisecond. 

Delay(1000); // menunggu selama satu detik

millis()

Mengembalikan nilai dalam millisecond dihitung sejak arduino board menyala. Penapungnya

harus long integer.

Value = millis(); // set ‘value’ equal to millis()

Mathmin(x,y)

Membadingkan 2 variable dan akan mengembalikan nilai yang paling kecil. 

value = min(value, 100); // set ‘value’ sebagai nilai yang paling kecil dari kedua nilai

max(x,y)

Max merupakan kebalikan dari min. 

Page 38: Tutorial Singkat Bahasa Pemrograman Arduino

value = max(value, 100); //set ‘value’ sebagai nilai yang paling besar dari kedua nilai 

SerialSerial.begin(rate)

Statement ini di gunakan untuk mengaktifkan komunikasi serial dan mengset baudrate. 

void setup(){Serial.begin(9600); //open serial port and set baudrate 9600 bps}

Serial.prinln(data)

Mengirimkan data ke serial port. 

Serial.println(100); // mengirimkan 100