BAB II LANDASAN TEORI. berupa papan informasi yang dilakukan oleh Fatoni (2005) dan dot matrix display

dokumen-dokumen yang mirip
Structure dasar dari bahasa pemrograman arduino adalah sederhana yang

BAB 3 PERANCANGAN SISTEM. Bab ini akan membahas tentang perancangan sistem yang digunakan dari alat

Tutorial Singkat Bahasa Pemrograman Arduino

PENGENALAN ARDUINO. SPI : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin-pin ini mensupport komunikasi SPI menggunakan SPI library.

BAB II DASAR TEORI. open-source, diturunkan dari Wiring platform, dirancang untuk. memudahkan penggunaan elektronik dalam berbagai

BAB II LANDASAN TEORI. dalamnya terkandung sebuah inti prosesor, memori (sejumlah kecil RAM, memori

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

BAB 3 PERANCANGAN SISTEM

BAB 3 PERANCANGAN SISTEM. ruangan yang menggunakan led matrix dan sensor PING))). Led matrix berfungsi

DAFTAR ISI LEMBAR PENGESAHAN... LEMBAR PERSETUJUAN... PERNYATAAN KEASLIAN... ABSTRAK... ABSTRACT... KATA PENGANTAR... vii DAFTAR ISI...

BAB 3 PERANCANGAN SISTEM

BAB II DASAR TEORI. mikrokontroler yang berbasis chip ATmega328P. Arduino Uno. memiliki 14 digital pin input / output (atau biasa ditulis I/O, dimana

BAB 3 PERANCANGAN SISTEM. Computer. Parallel Port ICSP. Microcontroller. Motor Driver Encoder. DC Motor. Gambar 3.1: Blok Diagram Perangkat Keras

BAB II TEORI PENUNJANG

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

BAB II KAJIAN PUSTAKA

MICROCONTROLER AVR AT MEGA 8535

BAB II LANDASAN TEORI

BAB III PERANCANGAN ALAT

BAB II DASAR TEORI Diagram Alir

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN ALAT DAN PROGRAM

BAB III PERANCANGAN. Microcontroller Arduino Uno. Power Supply. Gambar 3.1 Blok Rangkaian Lampu LED Otomatis

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM

BAB II DASAR TEORI. tertarik dalam menciptakan objek atau lingkungan yang interaktif.

BAB II LANDASAN TEORI. berinteraksi dengan mudah dan interaksi dengan masyarakat umum juga menjadi

BAB II TINJAUAN PUSTAKA

BAB II DASAR TEORI. mikrokontroler yang berbasis chip ATmega328P. Arduino Uno. memiliki 14 digital pin input / output (atau biasa ditulis I/O,

BAB II TINJAUAN PUSTAKA. 2.1PHOTODIODA Dioda foto adalah jenis dioda yang berfungsi mendeteksi cahaya. Berbeda dengan

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

BASIC MOBILE ROBOT ARDUINO Kelengkapan Nama Jumlah Unit 2 mm Akrilik Base Board 2 Pcs

KRCT [MODUL WORKSHOP 1] TANJUNGPINANG 2012 KONTES ROBOT CERDAS

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN ALAT

BAB II DASAR TEORI Arduino Mega 2560

BAB III PERANCANGAN ALAT DAN PROGRAM

Logika pemrograman sederhana

BAB II LANDASAN TEORI

Sistem Minimum Mikrokontroler. TTH2D3 Mikroprosesor

BAB V PENGUJIAN DAN ANALISIS. dapat berjalan sesuai perancangan pada bab sebelumnya, selanjutnya akan dilakukan

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

TAKARIR. Akumulator Register yang digunakan untuk menyimpan semua proses aritmatika

BAB II TINJAUAN PUSTAKA

BAB III PERANCANGAN SISTEM

MODUL 2 Input Data dalam Arduino

MICROCONTROLER AVR AT MEGA 8535

Sistem Tertanam. Pengantar Atmega328 dan Arduino Uno. Dennis Christie - Universitas Gunadarma

BAB IV HASIL DAN PEMBAHASAN. ketepatan masing-masing bagian komponen dari rangkaian modul tugas akhir

BAB 3: PERANCANGAN DAN SISTEM KERJA RANGKAIAN. Bab ini membahas tentang perencanaan dan pembuatan sistem secara

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN ALAT DAN PROGRAM

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB II DASAR TEORI. open-source, diturunkan dari Wiring platform, dirancang untuk. software arduino memiliki bahasa pemrograman C.

BAB IV PENGUJIAN DAN ANALISA ALAT

BAB 3 PERANCANGAN SISTEM

TOILET PINTAR ABSTRAK

BAB III METODE PENELITIAN DAN PERANCANGAN SISTEM. secara otomatis. Sistem ini dibuat untuk mempermudah user dalam memilih

Tinjauan dari penelitian yang sudah ada diperlukan untuk dilakukannya. sebelumnya dengan perancangan sistem yang akan dilakukan pada penelitian tugas

Gambar 2.1 Arduino Uno

DAFTAR ISI ABSTRAKSI KATA PENGANTAR DAFTAR TABEL DAFTAR GAMBAR DAFTAR LAMPIRAN DAFTAR ISTILAH DAN SINGKATAN. 1.1 Latar Belakang Masalah 1

Analog to Digital Convertion Menggunakan Arduino Uno Minsys

PANDUAN PRAKTIKUM DASAR ARDUINO

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA. yang telah membuat Data Logger Autoclave, prinsip kerja alat ini adalah pada

BAB II DASAR TEORI. mendeteksi gejala perubahan suhu pada objek tertentu. Sensor suhu

BAB II ANALISIS DAN PERANCANGAN. Untuk mendapatkan tujuan sebuah sistem, dibutuhkan suatu

Light Dependent Resistor LDR Menggunakan Arduino Uno Minsys

BAB III DESKRIPSI MASALAH

Contoh Bentuk LCD (Liquid Cristal Display)

BAB III PERANCANGAN. AMR_Voice Smartphone Android. Module Bluetooth untuk komunikasi data. Microcontroller Arduino Uno. Motor Servo untuk Pintu

BAB 4 IMPLEMENTASI DAN EVALUASI

TUTORIAL DASAR MEMBUAT PROJECT ARDUINO UNO

RANCANG BANGUN RUNNING TEXT LED DISPLAY BERBASIS MIKROKONTROLER SEBAGAI MEDIA INFORMASI DI UNIVERSITAS MUHAMMADIYAH PURWOKERTO

JOBSHEET I ANTARMUKA MIKROKONTROLER DENGAN LED

PEMBUATAN PROTOTIPE ALAT PENDETEKSI LEVEL AIR MENGGUNAKAN ARDUINO UNO R3

Display LCD. Menggunakan Arduino Uno MinSys

DAFTAR ISI. SAMPUL DALAM... i. PRASYARAT GELAR... ii. LEMBAR PERSETUJUAN... iii. PENETAPAN PANITIA PENGUJI... iv. SURAT PERNYATAAN BEBAS PLAGIAT...

Komunikasi Serial. Menggunakan Arduino Uno MinSys

BAB II LANDASAN TEORI

BAB II DASAR TEORI. Gambar 2.1 Strain Gauge

BAB III PERANCANGAN SISTEM

Membuat kontrol display seven segment Membuat program Counter baik Up Counter maupun Down Counter dengan media tampilan 7-Segment.

BAB II LANDASAN TEORI. menghubungkan node satu dengan node yang lainnya sehingga membentuk

BAB II LANDASAN TEORI

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

BAB II LANDASAN TEORI

Mikrokontroler AVR. Hendawan Soebhakti 2009

BAB 3 PERANCANGAN SISTEM

BAB II TINJAUAN PUSTAKA

BAB III PERENCANAAN DAN PEMBUATAN ALAT

BAB IV PEMBAHASAN. waktu tertentu. Dimana alat tersebut dapat dioperasikan melalui komputer serta

BAB III PEMBUATAN SOFTWARE

BAB II TINJAUAN PUSTAKA

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

PANDUAN PRAKTIKUM DASAR ARDUINO

BAB II TINJAUAN PUSTAKA

BAB IV PENGUJIAN DAN ANALISA ALAT. perancangan alat. Tujuan pengujian adalah untuk mengetahui kebenaran

Transkripsi:

BAB II LANDASAN TEORI 2.1 Tinjauan Pustaka Hal yang mendasari penelitian yang dilakukan dalam penyusunan laporan Tugas Akhir ini adalah melihat pada alat yang telah dibuat sebelumnya yaitu berupa papan informasi yang dilakukan oleh Fatoni (2005) dan dot matrix display yang dilakukan oleh Rudiono (2010). Alat yang akan dibuat kali ini adalah pengembangan dari alat yang telah dibuat sebelumnya, yaitu dengan penambahan jumlah karakter dari sistem dot matrix display. Dalam papan informasi elektronik, masukan atau input data dilakukan melalui rangkaian downloader ataupun software, sedangkan pada dot matrix display pada umumnya harus membuat driver kolom, driver baris dan jumlah karakter sedikit. Maka, untuk pengembangan kali ini adalah apabila kita ingin merubah tulisan pada dot matrix display menggunakan konektor keyboard PC maka kita tidak perlu repot-repot merubah programnya. Cara mengoperasikannya juga sangat mudah, yaitu cukup menekan tombol ESC untuk mengganti karakter sesuai dengan yang kita inginkan lalu menekan tombol ENTER untuk mengirimkan data masukan dari keyboard PC yang akan diproses oleh mikrokontroler ATmega328 lalu akan ditampilkan di display. 6

2.2 Dot Matrix Display Dot Matrix Display yaitu berupa LED (Light Emitting Diode) yang disambung dan dirangkai menjadi deretan LED (Light Emitting Diode) ataupun dapat berupa dot matrix. Dot matrix merupakan deretan LED (Light Emitting Diode) yang membentuk array dengan jumlah kolom dan baris tertentu, sehingga titik-titik yang menyala dapat membentuk suatu karakter angka, huruf, tanda baca, dan sebagainya. Panel dot matrix display P10 ukuran 16 x 32 merupakan modul display dot matrix yang sudah tersusun register untuk mengendalikan nyala array LED (Light Emitting Diode), dan input teks. Jika dot matrix tidak menggunakan shift register, maka LED (Light Emitting Diode) bisa menyala bersamaan satu kolom atau satu baris. Pada dasarnya LED (Light Emitting Diode) memiliki dua buah kaki Anoda dan Katoda yang dimana untuk mengaktifkan LED (Light Emitting Diode) tersebut Anoda kita beri VCC dan Katoda kita hubungkan ke Ground. Dot Matrix merupakan kumpulan dari LED (Light Emitting Diode) yang dihubungkan. Gambar 2.1 Susunan Led Dot Matrix

Untuk menampilkan sebuah huruf pada display, maka data binernya harus dikirimkan secara terus menerus. Sebagai contoh adalah cara pembentukan karakter A. Langkah selanjutnya adalah mengubah bentuk pola karakater A dimana LED (Light Emitting Diode) yang nyala (merah) logika 1 dan yang padam (hitam) logika 0. Berikut contoh tampilan huruf A pada Dot Matrix ukuran 5x7 dapat dilihat pada Gambar 2.2. Gambar 2.2 Contoh Tampilan Huruf A pada Dot Matrix 5x7 Dalam Tugas Akhir ini, jenis Dot Matrix yang akan digunakan dalam rangkaian adalah Dot Matrix Display P10 ukuran 16 baris dan 32 kolom berwarna merah. Prinsip kerjanya sama seperti Dot Matrix 5x7 dimana Dot Matrix Display P10 ini sudah ditentukan letak karakter pada display di library Arduino. Berikut Gambar 2.3 adalah skema Dot Matrix Display P10.

Konektor Gambar 2.3 Skema Dot Matrix Display P10 Pada Display Dot matrix ini terdapat pin konektor sebanyak 16 pin untuk menghubungkan ke pin mikrokontroler ATmega328. Pin konektor ini akan dijelaskan pada Gambar 2.4. Gambar 2.4 Pin Konektor DMD dan Pin Konektor Ke Mikrokontroler

2.3 Keyboard PC Keyboard PC adalah sarana input yang nantinya akan dimanfaatkan untuk menuliskan atau mengubah text pada tampilan display. Keyboard merupakan sarana input yang sangat murah. Sistem berbasis mikrokontroler dengan mudah bisa dilengkapi dengan 101 tombol untuk mengisikan teks maupun angka. Aplikasi ini berfungsi untuk mengambil data karakter dari keyboard dan mengirim ke port serial mikrokontroler ATmega328 dalam bentuk ASCII (American Standard Code for Information Interchange). Gambar 2.5 Keyboard PC dan Scan Code (Sutanto, 2000) Setiap kali salah satu tombol keyboard ditekan atau dilepas, keyboard akan mengirimkan kode ke mikrokontroler. Kode tersebut dinamakan dengan scan code, seperti yang terlihat pada Gambar 2.5. Scan code untuk tombol s adalah 1B (angka hexsadesimal yang setara dengan angka biner 00011011). Ketika tombol s ditekan terus, maka keyboard akan mengirimkan 1B berikutnya terus menerus sampai ada tombol lain yang akan ditekan atau tombol s tadi dilepaskan.

Keyboard juga mengirimkan kode pada saat ada satu tombol yang dilepas, kodenya adalah F0 (angka heksadesimal yang setara dengan biner 11110000). Jadi, jika tombol s tadi dilepas maka keyboard akan mengirimkan F0 dan 1B. Kode-kode tersebut dikirim oleh keyboard secara seri, artinya dikirmkan satu bit demi satu bit. Misalkan mula-mula dikirim 1, sesaat kemudian 1 lagi dan menyusul 0 sampai akhirnya terkirim sebanyak 8 bit yang berbentuk 00011011 (dikirim mulai dari bit yang paling kanan kemudian bergeser satu persatu samapi yang paling kiri). Masing-masing tombol mempunyai scan code sendiri, termasuk tombol Shift, tombol Ctrl dan lain-lain. Scan code disusun sebagai kode 8 bit. Konfigurasi dari konektor keyboard dapat dilihat pada Gambar 2.6. Gambar 2.6 Konfigurasi konektor keyboard PS2 2.4 Scanning Encoder Dalam scanning encoder, tombol-tombol kunci disusun seperti sebuah matrik. Dengan cara seperti ini, cacah sambungan yang diperlukan menjadi lebih sedikit. Sandi yang dikenal dengan sebutan scanning encoder, berupa sebuah keeping RAM (Random Access Memory) yang akan membangkitkan karakter ASCII (American Standard Code for Information

Interchange) yang sesuai bila tombol pada matrix saklar ditekan. ASCII (American Standard Code for Information Interchange) menyajikan sebuah karakter dengan 7 bit bilangan biner yang memungkinkan kombinasi sampai 128 karakter yang berbeda. Dari 128 karakter ini, 96 karakter diantaranya berupa printable character (termasuk huruf besar dan kecil). Sisa karakter yang lain sebanyak 32 buah, digunakan untuk karakter khusus, seperti carriage return, line feed, backspace dan delete pada keyboard. Sistem berbasis mikrokontroler dengan mudah bisa dilengkapi dengan 101 tombol untuk mengisikan teks maupun angka. Aplikasi ini berfungsi untuk mengambil data karakter dari keyboard dan mengirimakan ke port serial mikrokontroler ATmega328 dalam bentuk ASCII (American Standard Code for Information Interchange). 2.5 Mikrokontroler ATmega328 Mikrokontroler adalah suatu alat elektronika digital yang mempunyai masukan serta keluaran serta dapat di read dan write dengan cara khusus. Mikrokontroler dapat diberikan suatu program yang bekerja sesuai dengan keinginan pengguna. Sehingga mikrokontroler dapat dihubungkan dengan alatalat lain. Dapat dikatakan mikrokontroler sebagai otak dari sistem secara keseluruhan ATmega328 adalah mikrokontroler keluaran dari Atmel yang mempunyai arsitektur RISC (Reduce Instruction Set Computer) yang dimana setiap proses

eksekusi data lebih cepat dari pada arsitektur CISC (Completed Instruction Set Computer). Mikrokontroler ini memiliki beberapa fitur antara lain : 1. 130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock. 2. 32 x 8-bit register serba guna. 3. Kecepatan mencapai 16 MIPS dengan clock 16 MHz. 4. 32 KB Flash memory dan pada arduino memiliki bootloader yang menggunakan 2 KB dari flash memori sebagai bootloader. 5. Memiliki EEPROM (Electrically Erasable Programmable Read Only Memory) sebesar 1KB sebagai tempat penyimpanan data semi permanent karena EEPROM tetap dapat menyimpan data meskipun catu daya dimatikan. 6. Memiliki SRAM (Static Random Access Memory) sebesar 2KB. 7. Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse Width Modulation) output. 8. Master / Slave SPI Serial interface.

Gambar 2.7 Arsitektur ATmega328 Gambar 2.8 Konfigurasi pin Atmega328 (Sumber : www.atmel.com)

Memory ATmega328 memiliki 32 KB flash memori untuk menyimpan kode, juga 2 KB yang digunakan untuk bootloader. ATmega328 memiliki 2 KB untuk SRAM dan 1 KB untuk EEPROM. Input dan Output Setiap 14 pin digital pada arduino dapat digunakan sebagai input atau output, menggunakan fungsi pinmode(), digitalwrite(), dan digitalread(). Input/output dioperasikan pada 5 volt. Setiap pin dapat menghasilkan atau menerima maximum 40 ma dan memiliki internal pull-up resistor (disconnected oleh default) 20-50 KOhms. Beberapa pin memiliki fungsi sebagai berikut : 1. Serial : 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan mengirim (TX) TTL data serial. Pin ini terhubung pada pin yang koresponding dari USB FTDI ke TTL chip serial. 2. Interupt eksternal : 2 dan 3. Pin ini dapat dikonfigurasikan untuk trigger sebuah interap pada low value, rising atau falling edge, atau perubahan nilai. 3. PWM : 3, 5, 6, 9, 10, dan 11. Mendukung 8 -bit output PWM dengan fungsi analogwrite(). 4. SPI : 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin ini mensuport komunikasi SPI, yang mana masih mendukung hardware, yang tidak termasuk pada bahasa arduino.

5. LED : 13. Ini adalah dibuat untuk koneksi LED ke digital pin 13. Ketika pin bernilai HIGH, LED hidup, ketika pin LOW, LED mati. 2.6 Catu Daya Catu daya merupakan sumber tegangan DC. Sumber tegangan DC ini dibutuhkan oleh berbagai macam rangkaian elektronika untuk dapat dioperasikan. Karena sebagian besar rangkaian elektronika membutuhkan tegangan DC untuk dapat bekerja dengan baik. Karena tegangan jala-jala dari PLN adalah tegangan AC, maka yang harus dilakukan terlebih dahulu dalam setiap peralatan elektronika adalah mengubah tegangan AC ke tegangan DC. Oleh sebab itu diperlukan rangkaian penyearah yang dapat melakukan pengubahan tegangan AC ke tegangan DC. Rangkaian inti dari catu daya ini adalah suatu rangkaian penyearah yaitu rangkaian yang mengubah sinyal bolak-balik (AC) menjadi sinyal searah (DC). Gambar 2.9 Catu Daya (Sumber : https://telinks.wordpress.com/tag/skematik-catu-daya-5v-dan-12v/)

2.7 Pemrograman Bahasa C Arduino 2.7.1. Structure Structure dasar dari bahasa pemrograman arduino itu sederhana hanya terdiri dari dua bagian yaitu: void setup( ) // Statement; void loop( ) // Statement; Dimana setup() bagian untuk inisialisasi yang hanya dijalankan sekali diawal 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 disertakan 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 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 dibahas diatas 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 diatas fungsi tersebut memiliki nilai balik int (integer), karena kalau tidak menghendaki adanya nilai balik maka type function harus void.

2.7.2 Variable Variable adalah sebuah penyimpan nilai yang dapat digunakan dalam program. Variable dapat dirubah sesuai dengan instruksi yang kita buat. Ketika mendeklarisikan variable harus disertakan 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 dideklarasikan pada awal program sebelum void setup(), secara lokal didalam sebuah function, dan terkadang didalam sebuah block statement pengulangan. Sebuah variable global hanya satu dan dapat digunakan pada semua block function dan statement didalam program. Variable global dideklarasikan pada awal program sebelum function setup(). Sebuah variable lokal dideklarasikan disetiap block function atau di setiap block statement pengulangan dan hanya dapat digunakan 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 2.7.3 Data type 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 diakses dengan index number, nilai yang terdapat dalam array dapat dipanggil dengan cara menuliskan nama array dan index number. Array dengan index 0 merupakan nilai pertama dari array. Array perlu dideklarasikan dan kalau perlu diberi 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 2.7.4 Operator aritmatic Operator aritmatic terdiri dari penjumlahan, pengurangan, pengkalian, dan pembagian. y = y + 3; x = x - 8; i = i * 5; r = r / 9;

Dalam menggunakan operan aritmatic 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 sebesar1 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. 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 digunakan. Terdapat 3 operator logical AND, OR, dan NOT, yang biasanya digunakan 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 ) salah // benilai benar apabila ekspresi operator 2.7.5 Konstanta Arduino mempunyai beberapa variable yang sudah dikenal yang kita sebut konstanta. Ini membuat program lebih mudah untuk dibaca. 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 digunakan ketika membaca dan menulis ke digital pin. HIGH didefinisikan 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 ); 2.7.6 Flow control if If Operator if mengtest sebuah kondisi seperti nilai analog sudah berada dibawah 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 diakhir, sehingga otomatis akan melakukan satu kali baris perintah walaupun pada awalnya sudah terpenuhi. Do //dosomething; While ( somevariable?? value );

2.7.7 Digital I/O Input / Output Digital pada breadboard arduino ada 14, pengalamatnya 0-13, ada saat tertentu I/O 0 dan 1 tidak bisa digunakan karena dipakai 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 pin secara default dikonfigurasi sebagai input sehingga untuk merubahnya harus menggunakan operator pinmode(pin, mode). pinmode (pin, OUTPUT); digitalwrite(pin, HIGH); // mengset pin sebagai output // pin sebagai source voltage digitalread(pin) LOW. Membaca nilai dari pin yang kita kehendaki dengan hasil HIGH atau 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 2.7.8 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); nilai analog pin // mengset value sama dengan analogwrite(pin, value) Untuk mengirimkan nilai analog pada pin analog. analogwrite(pin, value); // menulis ke pin analog 2.7.9 Time delay(ms) Menghentikan program untuk sesaat sesuai dengan yang di kehendaki, satuanya dalam millisecond. Delay(1000); // menunggu selama satu detik 2.7.10 Serial Serial.begin(rate) Statement ini digunakan untuk mengaktifkan komunikasi serial dan mengset baudrate. void setup() 9600 bps Serial.begin(9600); //open serial port and set baudrate

Serial.prinln(data) Mengirimkan data ke serial port. Serial.println(100); // mengirimkan 100