• Tidak ada hasil yang ditemukan

Tutorial Singkat Bahasa Pemrograman Arduino

N/A
N/A
Protected

Academic year: 2021

Membagikan "Tutorial Singkat Bahasa Pemrograman Arduino"

Copied!
38
0
0

Teks penuh

(1)

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)

 Setiap baris kode harus diakhiri dengan tanda titik koma (jika ada titik koma yang hilang maka program tidak akan bisa dijalankan).

Variabel

Sebuah program secara garis besar dapat didefinisikan sebagai instruksi untuk memindahkan angka dengan cara yang cerdas. Variabel inilah yang digunakan untuk memindahkannya.

(2)

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 Matematika

Operator 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 Pembanding

Digunakan 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))

(3)

 Lebih besar dari (misalnya: 12 > 10 adalah TRUE (benar) atau 12 > 12 adalah FALSE (salah) atau 12 > 14 adalah FALSE (salah))

Struktur Pengaturan

Program 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–.

Digital

1. 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).

Analog

Arduino 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).

(4)

Cara Membuat Flowchart Sistem Dengan Benar

07

MEI

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)

(5)

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

(6)

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 :

(7)
(8)

Cara Membuat Flow chart yang benar

Analisis Sistem Informasi – Pedoman Membuat Flowchart

Ditulis 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 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.

(9)

Ada 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 Flowchart

System 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 Flowchart

Bagan 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 Flowchart

Bagan 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 Flowchart

Bagan 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 Flowchart

Bagan 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

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

(10)

Flow Direction Symbols

dipakai 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 symbols

Menunjukkan 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 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)

(11)

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 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. 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.

(12)

Contoh Flowchart Program

Contoh Flowchart Program - Menentukan Bilangan Ganjil/Genap

Penggunaan predefined processes dapat digunakan untuk menyederhanakan flowchart system yang complex

(13)

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

(14)

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.

(15)

· 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.

(16)

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.

(17)

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.

(18)

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

(19)

· 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.

(20)

Simbol-simbol Flowchart

1. Flow Direction Symbols (simbol penghubung alur) 2. Processing Symbols (simbol proses)

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

(21)

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.

(22)

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.

(23)

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.

(24)

Belajar Pemograman Arduino

Diposkan oleh AF HERU

 di 06.33

- 3 komentar

Tampilan awal software arduino

Pemrograman arduino

Baiklah 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 pemrograman

structure

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

(25)

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

()

{

(26)

digitalWrite

(13

, HIGH

)

;

// nyalakan ‘pin’ 13

delay

(1000)

;

// pause selama 1 detik

digitalWrite

(13

, LOW

)

;

// matikan ‘pin’ 13

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.

(27)

{ } 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.

(28)

Contoh

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()

(29)

// no setup needed

}

void loop()

{ for (int i=0; i<20;)

// 'i' hanya dapat di gunakan dalam pengulangan

saja

{

i++;

}

float f;

// 'f' sebagai variable local

}

Data type

Biasanya 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.

(30)

// mendeklarasikan ‘integerVariable’ sebagai type

integer

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:

(31)

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

x = arraySaya[5];

// x sekarang sama dengan 10

Operator aritmetic

aritmetic

operator 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 – y

x *= y; // sama seperti x = x * y

x /= 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.

(32)

x == y; // x sama dengan y

x != y; // x tidak sama dengan y

x < y; // x leboh kecil dari y

x > y; // x lebih besar dari y

x <= y; // x lebih kecil dari sama dengan y

x >= 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

(33)

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.

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 );

(34)

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.

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.

(35)

{

//doSomethig;

}

while

Operator while akan terus mengulang baris perintah yang ada dalam bracket sampai ekspresi sebagai kondisi pengulangan benilai salah.

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.

(36)

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).

pinMode (pin, OUTPUT); // mengset pin sebagai output

digitalWrite(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.

(37)

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

pin

analogWrite(pin, value)

mengirimkan nilai analog pada pin analog.

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

Time

delay(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()

(38)

min(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.

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

dari kedua nilai

Serial

Serial.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.

Gambar

Tabel Simbol-simbol Flowchart

Referensi

Dokumen terkait

BAHASA PEMROGRAMAN VISUAL BASIC DAN ARDUINO ” yang dibuat guna memenuhi syarat menyelesaikan Sarjana jenjang pendidikan Strata-Satu (S1) Fakultas Teknik, Program Studi Teknik

membantu merancang sebuah program aplikasi tentang Penjualan Suku Cadang Mobil pada PD.Kencana Baru di Bandar Lampung dengan menggunakan bahasa Pemrograman Visual

Penulisan bahasa pemrograman FORTRAN 77 memiliki struktur dan aturan yang baku, dan bisanya akan lebih mudah jika dilakukan dalam suatu lembar penulisan program

Dalam pembuatan perangkat lunak sistem Optimasi Tata Letak Barang Digudang Dengan Algoritma Genetika dengan bahasa pemrograman Borland Delphi 6.0 dibangun dengan beberapa tahapan,

a) Metacommand merupakan compiler directive (misalnya statement Program seperti pada bahasa pemrograman Pascal). Metacommand dapat digunakan saat akan berkomunikasi

Algoritma yang telah dibuat diterjemahkan dalam bahasa komputer menjadi sebuah program. Ketika menulis program, seorang pemrogram akan terikat dengan sintaks-sintaks instruksi

Gadget adalah hal yang sangat populer saat ini. Hampir setiap orang menggunakan gadget untuk berbagai keperluan. Salah satu fungsinya adalah berkomunikasi dan mencari informasi dengan cepat. Gadget membutuhkan sebuah program yang berfungsi untuk mengatur berjalannya perangkat tersebut. Menurut Yulikuspartono (2009:29) mengemukakan bahwa “ program merupakan sederetan instruksi atau statement dalam bahasa yang dimengerti oleh komputer yang bersangkutan”. Program merupakan sebuah elemen inti untuk kinerja suatu perangkat. Program inilah yang akan mengolah dan menjalankan perintah yang diberikan oleh user agar dapat di kelola oleh perangkat/device. Program juga dibuat oleh manusia, dan orang yang membuat program ini disebut dengan Programmer. Seorang programmer membuat program dengan menggunakan bahasa pemrograman. Bahasa pemrograman inilah yang disusun dengan berdasarkan logika atau algoritma menusia yang di terjemahkan ke algoritma manusia yang di terjemahkan ke perangkat. Bahasa pemrograman ini dibuat untuk memudahkan manusia dalam membuat suatu aplikasi atau program. Bahasa pemrograman bisa di klasifikasikan dari beberapa sudut pandang. Salah satu pengklasifikasian bahasa pemrograman adalah pendekatan dari notasi bahasa pemrograman tersebut, apakah lebih dekat ke bahasa mesin atau ke bahasa manusia. Dengan cara ini, bahasa pemrograman dapat di kelompokan menjadi dua yakni bahasa tingkat rendah (low level languages) dan bahasa tingkat tinggi (high level language). Bahasa tingkat tinggi adalah bahasa yang mudah dipahami oleh manusia, C++ merupakan salah satu contoh dari bahasa tingkat tinggi. Contoh lain dari bahasa tingkat tinggi ini seperti Pascal, Perl, Java, dan lain-lain sebagainya. Sedangkan bahasa tingkat rendah adalah bahasa mesin atau bahasa assembly. Secara sederhana sebuah komputer hanya dapat mengeksekusi program yang ditulis dalam bentuk bahasa mesin. Oleh karena itu, jika suatu program ditulis dalam bahasa tingkat tinggi maka program tersebut harus diproses terlebih dahulu sebelum bisa dijalankan dengan komputer. Hal ini merupakan salah satu kekurangan bagi bahasa tingkat tinggi dimana diperlukan waktu untuk memproses suatu program sebelum program tersebut di jalankan. Sebagai bahasa yang beraras tinggi, yang menggunakan perintah-perintah yang mudah dimengerti oleh manusia, C++ mempunyai keunggulan yakni bersifat universal. Sebagai bahasa yang universal, C++ bisa dijumpai di berbagai platform (Linux, Unix, Windows, Mac, dan lain-lain). Artinya, jika kita menguasai C++ di platform PC, sangat mudah untuk berpindah di Linux ataupun system operasi yang lain.