Upload
gindra-winaldi
View
127
Download
14
Embed Size (px)
DESCRIPTION
tutorial pemrograman arduino
Citation preview
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.
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)) >
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).
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)
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)
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
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.
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
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.
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
Contoh Flowchart Program
Contoh Flowchart Program - Menentukan Bilangan Ganjil/Genap
Penggunaan predefined processes dapat digunakan untuk menyederhanakan flowchart system yang complex
Flowchar Sistem untuk predefined process yang diberi nama Check shipment untuk Flowchart diatas
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:
· 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.
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:
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:
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
· 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
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
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.
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.
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.
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.
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
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.
{ } 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
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}
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
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];
// 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
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.
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.
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.
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).
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.
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.
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