Anda di halaman 1dari 103

Pengertian dan Kelebihan Arduino

ilham efendi
4 Comments
arduino, Hardware
Pada artikel sebelumnya membahas tentang 5 projek arduino terbaik,
namun masih banyak orang yang belum mengetahui apa itu arduino.
berikut ini sedikit penjelasan tentang apa itu arduino, apa saja yang dapat
dilakukan arduino, kelebihan dan juga pemrograman yang digunakan
arduino.

Arduino
Arduino adalah kit elektronik atau papan

rangkaian elektronik open source yang di dalamnya terdapat komponen


utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari
perusahaan Atmel.
Mikrokontroler itu sendiri adalah chip atau IC (integrated circuit) yang
bisa diprogram menggunakan komputer. Tujuan menanamkan program
pada mikrokontroler adalah agar rangkaian elektronik dapat membaca
input, memproses input tersebut dan kemudian menghasilkan output
sesuai yang diinginkan. Jadi mikrokontroler bertugas sebagai otak yang
mengendalikan input, proses dan output sebuah rangkaian elektronik.
Mikrokontroler ada pada perangkat elektronik di sekeliling kita. Misalnya
handphone, MP3 player, DVD, televisi, AC, dll. Mikrokontroler juga dipakai
untuk keperluan mengendalikan robot. Baik robot mainan, maupun robot
industri.
Karena komponen utama Arduino adalah mikrokontroler, maka Arduino
pun dapat diprogram menggunakan komputer sesuai kebutuhan kita.

Apa saja yang bisa dilakukan Arduino?

Kegunaan Arduino tergantung kepada kita yang membuat program.


Arduino bisa digunakan untuk mengontrol LED, bisa juga digunakan untuk
mengontrol helikopter.

Contoh yang sudah pernah dibuat adalah MP3 player, pengontrol motor,
mesin CNC, monitor kelembaban tanah, pengukur jarak, penggerak servo,
balon udara, pengontrol suhu, monitor energi, statiun cuaca, pembaca
RFID, drum elektronik, GPS logger, monitoring bensin dan masih banyak
lagi. Silahkan buka Google, Youtube atau lihat di
http://www.freeduino.org
Kelebihan Arduino

Tidak perlu perangkat chip programmer karena di dalamnya sudah


ada bootloader yang akan menangani upload program dari
komputer.

Sudah memiliki sarana komunikasi USB, sehingga pengguna Laptop


yang tidak memiliki port serial/RS323 bisa menggunakan nya.

Bahasa pemrograman relatif mudah karena software Arduino


dilengkapi dengan kumpulan library yang cukup lengkap.

Memiliki modul siap pakai (shield) yang bisa ditancapkan pada


board Arduino. Misalnya shield GPS, Ethernet, SD Card, dll.

Bahasa Pemrograman Arduino


Bahasa pemrograman Arduino adalah bahasa C. Tetapi bahasa ini sudah
dipermudah menggunakan fungsi-fungsi yang sederhana sehingga
pemula pun bisa mempelajarinya dengan cukup mudah.
Untuk membuat program Arduino dan mengupload ke dalam board
Arduino, anda membutuhkan software Arduino IDE (Integrated

Development Enviroment) yang bisa di download gratis di


http://arduino.cc/en/Main/Software
Panduan bahasa pemograman Arduino beserta dengan contoh-contohnya
bisa dibaca di halaman http://arduino.cc/en/Reference/HomePage

Apa itu Arduino Uno?


Oleh Bri, 9 April 2014.
Arduino, ATmega28, Mikrokontroler

Arduino Uno sebenarnya adalah salah satu kit mikrokontroler yang berbasis pada ATmega28.
Modul ini sudah dilengkapi dengan berbagai hal yang dibutuhkan untuk mendukung
mikrokontroler untuk bekerja, tinggal colokkan ke power suply atau sambungkan melalui
kabel USB ke PCmu Arduino Uno ini sudah siap sedia. Arduino Uno ini memilki 14 pin
digital input/output, 6 analog input, sebuah resonator keramik 16MHz, koneksi USB, colokan
power input, ICSP header, dan sebuah tombol reset.
Arduino Uno R3 adalah seri terakhir dan terbaru dari seri Arduino USB.

Arduino Uno R3

Spesifikasi Arduino Uno

Mikrokontroler ATmega328

Catu Daya 5V

Teganan Input (rekomendasi) 7-12V

Teganan Input (batasan) 6-20V

Pin I/O Digital 14 (of which 6 provide PWM output)

Pin Input Analog 6

Arus DC per Pin I/O 40 mA

Arus DC per Pin I/O untuk PIN 3.3V 50 mA

Flash Memory 32 KB (ATmega328) dimana 0.5 KB digunakan oleh


bootloader

SRAM 2 KB (ATmega328)

EEPROM 1 KB (ATmega328)

Clock Speed 16 MHz

Apa fungsi arduino uno?

Sebagaimana kita ketahui dengan mikrokontroler kita membuat program untuk


mengendalikan berbagai komponen elektronika. Program yang kita buat dengan bahasa
pemrograman didownload ke mikrokontroler, yang kemudian mikrokontroler akan bekerja
sesua dengan program yang kita buat.
Dan dengan Arduino Uno itu sendiri lebih memudahan pernggunanya untuk membuat
berbagai hal yang berkaitan dengan mikrokontroler, karena didalamnya sudah tersedia yang
dibutuhkan oleh mikrokontroler.
Contohnya yang dapat dibuat dengan Arduino antara lain, untuk membuat robot, mengontrol
motor stepper, pengatur suhu, mesin gate turnstile, display LCD, dan masih banyak lagi
contoh yang lainnya. Coba cari di google atau Youtube proyek-proyek Arduino ini sudah
banyak contohnya

Apa Kelebihan Arduino Uno.

- develop project mikrokontroler akan menjadi lebih dan menyenangkan. tinggal colok ke
USB, dan tidak perlu membuat downloader untuk mendownload program yang telah kita
buat.
- didukung oleh Arduino IDE, bahasa pemrograman yang sudah cukup lengkap librarynya.
- terdapat modul yang siap pakai/shield yang bisa langsung dipasang pada board Arduino
- dukungan dokumentasi yang bagus dan komunitas yang solid

Pemrograman Arduino Uno

Seperti yang sudah diutarakan sebelumnya, salah satu kelebihan dari arduino Uno ini adalah
didukung oleh software Arduino IDE (Integrated Development Enviroment) untuk
melakukan penulisan pemrograman. Bahasa pemrogramannya pun berdasarkan bahasa C
yang mudah untuk dpelajari dan sudah didukung oleh library yang lengkap.

Panduan lengkap pemrograman Arduino dan contoh contoh programnya dapat dipelajari
disini
http://arduino.cc/en/Reference/HomePage
http://ndoware.com/apa-itu-arduino-uno.html

Mengenal Arduino Uno Lebih Rinci


Abstrak
Arduino Uno adalah board mikrokontroler berbasis ATmega328. Uno memiliki 14
pin digital input / output (dimana 6 dapat digunakan sebagai output PWM), 6
input analog, resonator keramik 16 MHz, koneksi USB, jack listrik, header ICSP,
dan tombol reset. Uno dibangun berdasarkan apa yang diperlukan untuk
mendukung mikrokontroler, sumber daya bisa menggunakan power USB (jika
terhubung ke komputer dengan kabel USB) dan juga dengan adaptor atau
baterai.
Arduino Uno berbeda dari semua papan sebelumnya dalam hal tidak
menggunakan FTDI chip driver USB-to-serial. Sebaliknya, fitur Atmega16U2
(Atmega8U2 sampai versi R2) diprogram sebagai konverter USB-to-serial. Revisi
2 dari Uno memiliki resistor pulling 8U2 HWB yang terhubung ke tanah, sehingga
lebih mudah untuk menggunakan mode DFU.

Gambar 1: Arduino Uno


Papan Arduino Rev 3 memiliki fitur baru seperti berikut:

Pertama adalah pinout: ada penambahan pin SDA dan SCL yang dekat
dengan pin AREF dan dua pin baru lainnya ditempatkan dekat dengan pin
RESET, IOREF yang memungkinkan shield untuk beradaptasi dengan
tegangan yang disediakan dari papan / board. Di masa depan, shield akan
kompatibel dengan kedua papan yang menggunakan AVR, yang
beroperasi dengan 5V dan dengan Arduino yang beroperasi 3.3V. Kedua
adalah pin tidak terhubung, yang dicadangkan untuk tujuan masa depan.

Reset sirkuit yang sangat kuat

Atmega16U2 menggantikan Atmega8U2

"Uno" dalam bahasa Italia berarti satu, alasan diberi nama tersebut adalah untuk
menandai peluncuran Arduino 1.0. Uno dan versi 1.0 akan menjadi versi
referensi dari Arduino, dan akan terus berkembang.
Daftar Isi

Ringkasan Spesifikasi

Skema dan Referensi Desain

Sumber Daya / Power

Memori

Input dan Output

Komunikasi

Pemrograman

Perlindungan Arus USB

Karakteristik Fisik

Ringkasan Spesifikasi
Mikrokontroler

ATmega328

Operasi tegangan

5Volt

Input tegangan

disarankan 7-11Volt

Input tegangan batas 6-20Volt


Pin I/O digital

14 (6 bisa untuk PWM)

Pin Analog

Arus DC tiap pin I/O

50mA

Arus DC ketika 3.3V

50mA

Memori flash

32 KB (ATmega328) dan 0,5 KB digunakan oleh bootloader

SRAM

2 KB (ATmega328)

EEPROM

1 KB (ATmega328)

Kecepatan clock

16 MHz

Skema dan Referensi Desain


File EAGLE: Arduino-uno-Rev3-referensi-design.zip (CATATAN: dapat berjalan
pada Elang 6.0 dan yang lebih baru)
Skema: Arduino-uno-Rev3-schematic.pdf
Catatan: referensi desain Arduino dapat menggunakan Atmega8, 168, atau 328,
Model-model terbaru menggunakan ATmega328, tetapi Atmega8 ditunjukkan
dalam skema untuk referensi. Konfigurasi pin identik untuk ketiga prosesor
tersebut.
Sumber Daya / Power
Arduino Uno dapat diaktifkan melalui koneksi USB atau dengan catu daya
eksternal. Sumber daya dipilih secara otomatis. Untuk sumber daya Eksternal
(non-USB) dapat berasal baik dari adaptor AC-DC atau baterai. Adaptor ini dapat
dihubungkan dengan memasukkan 2.1mm jack DC ke colokan listrik board.

Baterai dapat dimasukkan pada pin header Gnd dan Vin dari konektor DAYA.
Board dapat beroperasi pada pasokan eksternal dari 6 sampai 20 volt. Jika Anda
menggunakan tegangan kurang dari 6 volt mungkin tidak akan stabil. Jika
menggunakan lebih dari 12V, regulator tegangan bisa panas dan merusak
papan. Rentang yang dianjurkan adalah 7 sampai 12 volt.
Pin listrik yang tersedia adalah sebagai berikut:

VIN. Input tegangan ke board Arduino ketika menggunakan sumber daya


eksternal. Anda dapat menyediakan tegangan melalui pin ini, atau, jika
Anda ingin memasok tegangan melalui colokan listrik, gunakan pin ini.

5V. Pin ini merupakan output 5V yang telah diatur oleh regulator papan
Arduino. Board dapat diaktifkan dengan daya, baik dari colokan listrik DC
(7 - 12V), konektor USB (5V), atau pin VIN board (7-12V). Jika Anda
memasukan tegangan melalui pin 5V atau 3.3V secara langsung (tanpa
melewati regulator) dapat merusak papan Arduino. Penulis tidak
menyarankan itu.

Tegangan pada pin 3V3. 3.3Volt dihasilkan oleh regulator on-board.


Menyediakan arus maksimum 50 mA.

GND. Pin Ground.

IOREF. Pin ini di papan Arduino memberikan tegangan referensi ketika


mikrokontroler beroperasi. Sebuah shield yang dikonfigurasi dengan benar
dapat membaca pin tegangan IOREF sehingga dapat memilih sumber
daya yang tepat agar dapat bekerja dengan 5V atau 3.3V.

Memori
ATmega328 memiliki 32 KB (dengan 0,5 KB digunakan untuk bootloader).
ATmega328 juga memiliki 2 KB dari SRAM dan 1 KB EEPROM (yang dapat dibaca
dan ditulis dengan perpustakaan / library EEPROM).
Input dan Output
Masing-masing dari 14 pin digital Uno dapat digunakan sebagai input atau
output, menggunakan fungsi pinMode(), digitalWrite(), dan digitalRead(). Mereka
beroperasi pada tegangan 5 volt. Setiap pin dapat memberikan atau menerima
maksimum 40 mA dan memiliki resistor pull-up internal (terputus secara default)
dari 20-50 kOhms. Selain itu, beberapa pin memiliki fungsi spesial:

Serial: pin 0 (RX) dan 1 (TX) Digunakan untuk menerima (RX) dan
mengirimkan (TX) data serial TTL. Pin ini terhubung dengan pin
ATmega8U2 USB-to-Serial TTL.

Eksternal Interupsi: Pin 2 dan 3 dapat dikonfigurasi untuk memicu


interrupt pada nilai yang rendah (low value), rising atau falling edge, atau
perubahan nilai. Lihat fungsi attachInterrupt() untuk rinciannya.

PWM: Pin 3, 5, 6, 9, 10, dan 11 Menyediakan 8-bit PWM dengan fungsi


analogWrite()

SPI: pin 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) mendukung komunikasi


SPI dengan menggunakan perpustakaan SPI

LED: pin 13. Built-in LED terhubung ke pin digital 13. LED akan menyala
ketika diberi nilai HIGH

Arduino Uno memiliki 6 input analog, berlabel A0 sampai A5, yang masingmasing menyediakan resolusi 10 bit (yaitu 1024 nilai yang berbeda). Secara
default mereka mengukur dari ground sampai 5 volt, perubahan tegangan
maksimal menggunakan pin AREF dan fungsi analogReference(). Selain itu,
beberapa pin tersebut memiliki spesialisasi fungsi, yaitu TWI: pin A4 atau SDA
dan A5 atau SCL mendukung komunikasi TWI menggunakan perpustakaan Wire.
Ada beberapa pin lainnya yang tertulis di board:

AREF. Tegangan referensi untuk input analog. Dapat digunakan dengan


fungsi analogReference().

Reset. Gunakan LOW untuk me-reset mikrokontroler. Biasanya digunakan


untuk menambahkan tombol reset.

Komunikasi
Arduino Uno memiliki sejumlah fasilitas untuk berkomunikasi dengan komputer,
Arduino lain, atau mikrokontroler lainnya. ATmega328 menyediakan UART TTL
(5V) komunikasi serial, yang tersedia pada pin digital 0 (RX) dan 1 (TX). Pada
ATmega16U2 saluran komunikasi serial melalui USB dan muncul sebagai com
port virtual untuk perangkat lunak pada komputer. Firmware 16U2 menggunakan
standar driver USB COM, dan tidak ada driver eksternal diperlukan. Namun, pada
Windows, diperlukan file .inf. Perangkat lunak Arduino termasuk monitor serial
yang memungkinkan data tekstual sederhana akan dikirim ke dan dari papan
Arduino. RX dan TX LED di papan akan berkedip ketika data sedang dikirim
melalui chip USB-to-serial dan koneksi USB komputer (tetapi tidak untuk
komunikasi serial pada pin 0 dan 1).
The ATmega328 juga mendukung I2C (TWI) dan komunikasi SPI. Perangkat lunak
Arduino termasuk perpustakaan Wire berfungsi menyederhanakan penggunaan
bus I2C. Untuk komunikasi SPI, menggunakan perpustakaan SPI.
Pemrograman

Arduino Uno dapat diprogram dengan software Arduino baca: Download


Software Arduino untuk Berbagai OS. Pilih "Arduino Uno dari menu Tools >
Board (sesuai dengan mikrokontroler pada papan). Untuk rincian, silahkan baca:
Mengenal Arduino dari Pemula Sampai Mahir.
Perlindungan Arus USB
Arduino Uno memiliki polyfuse reset yang melindungi port USB komputer Anda
dari arus pendek atau berlebih. Meskipun kebanyakan komputer memberikan
perlindungan internal sendiri, sekering menyediakan lapisan perlindungan
tambahan. Jika lebih dari 500 mA, sekering otomatis bekerja.
Karakteristik Fisik
Panjang maksimum dan lebar PCB Uno masing-masing adalah 2,7 dan 2,1 inci,
dengan konektor USB dan colokan listrik yang melampaui dimensi tersebut.
Empat lubang sekrup memungkinkan board harus terpasang ke permukaan.
Perhatikan bahwa jarak antara pin digital 7 dan 8 adalah 0,16", tidak seperti pin
lainnya.
http://aozon.blogspot.com/2014/03/mengenal-arduino-uno-lebih-rinci.html
Tutorial Contoh Kode Program Arduino dan Simulasi ISIS Proteus
Abstrak
Sudah banyak sekali contoh program Arduino yang bisa Anda jadikan referensi,
tetapi Aozon disini akan memaparkan bukan hanya contoh kode program saja,
tetapi skema pembuatan dan simulasi sirkuit dan lain-lain. Dengan artikel ini
diharapkan pembaca dapat lebih memperdalam keilmuannya dalam bidang
pemrograman Arduino. Simulasi sirkuit dilakukan dengan menggunakan software
ISIS (Proteus 7 Professional) yang memungkinkan Anda untuk mengecek sirkuit
terlebih dahulu agar berjalan dengan baik.
Keyword: Arduino, Contoh Program, ISIS Proteus.
Daftar Isi
1. Dasar
o

Kode dasar yang harus ada

Blink LED

Membaca masukan Digital (Tombol), kirim ke monitor PC


(Serial)

Membaca masukan Analog (Potensio), kirim ke monitor PC


(Serial)

Analog Output untuk meredupkan dan menerangkan LED

Membaca Analog dan mengkonversinya menjadi tegangan (0


- 5 Volt)

2. Digital
o

Blink LED tanpa delay

Tombol (push button) dan LED

Tombol dan filtering noise

Menghitung tombol ketika ditekan

Menggunakan INPUT_PULLUP

Nada dengan Piezo Speaker

Analog input dan Piezo

Keyboard dan Piezo

Multiple Speaker

3. Analog
o

Input Analog, mapping dan kontrol cahaya LED

Potensio mengontrol blink LED

Kontrol 12 LED dengan Arduino Mega

Menentukan nilai minimum dan maksimum sensor

Menggunakan PWM untuk mengontrol LED

Membaca analog input lebih halus

4. Komunikasi
o

Membaca String ASCII

Tabel ASCII

Mouse dan LED

Grafik

Menyalakan dan mematikan LED

5. Kontrol Struktur

pernyataan if

Perulangan for

Array

Perulangan while

switch case

6. Sensor
o

ADXL3xx accelerometer

Piezo

Memsic2125

Ping Ultrasonic

SR04 Ultrasonic

7. Antarmuka / Display
o

LED Bar Graph

8x8 matrix LED

8. String
o

Mengenal lebih dalam tentang string dan akan di update jika ada
permintaan dari pembaca

9. USB (Leonardo, Micro, dan Due)


o

Kontrol Keyboard dan Mouse

Mengirim string dengan keyboard

Kursor dengan tombol

10.Bantuan (saat ini belum ada masalah dari pembaca)


http://aozon.blogspot.com/2014/04/tutorial-contoh-kode-program-arduino.html

TUTORIAL CARA MENGINSTAL DRIVER ARDUINO


19.57 Catur Deriyandi No comments

Pada kesempatan kali ini saya akan membagi cara menginstal program
arduino, dimana program arduino sangat berguna bagi anda yang suka
ngoprek peralatan elektronik seperti pemograman line follower, dll.
pokoknya semua yang berhubungan dengan arduino pasti untuk programnya
memakai program arduino.
Adapun cara menginstalnya sebagai berikut :
1. Hubungkan Arduino pada komputer menggunakan Kabel USB tipe B :

2. Pada bagian bawah kanan dekstop akan muncul Popup installing device
driver software seperti pada gambar di bawah ini .

3. Sistem windows 7 tidak mendukung driver untuk arduino, seperti


gambar di bawah, oleh karena itu harus dilakukan penginstalan secara
manual.

4. Buka device manager, pada bagian search program and files ketikkan
"Device Manager" tanpa tanda kutip. Perhatikan gambar di bawah ini
pada bagian control panel akan muncul device manager, klik untuk
menjalankan programnya.

5. Cari uknwon device yang berada di other device, biasanya muncul


tanda seru berwarna kuning yang bermakna driver belum terinstal
sempurna.

6. Klik kanan pada arduino kemudian pilih Update Driver Software.

7. Pilih Browser my computer for driver sofware

8. Arahkan lokasi tempat penyimpatan instalan menuju


....\arduino1.0.5\drivers Pastikan check box include subfolder
dicentang. Kilk NEXT untuk melanjutkan proses instalasi.

9. Lanjutkan dengan cara mengklik instal pada tampilan windows security .

10.Jika proses instalasi berhasil, akan muncul tampilan yang menyatakan


bahwa proses instalasi telah berjalan sukses.

11.Perhatikan dan ingat nama COM Arduino, Karena nama COM tersebut
akan di pakai setelah anda memporgram pada arduino untuk di upload ke
arduinonya.

http://blog.famosastudio.com/2011/06/tutorial/memulai-menggunakanarduino/39

Menggunakan LCD 16 x 2 di Arduino Uno


03:17 Arduino, Elektro, Mikrokontroller No comments

LCD merupakan alat yang biasa digunakan untuk menampilkan informasi


dengan menggunakan mikrokontroller. Sekarang bagaimana cara untuk
menggunakan LCD ini dengan menggunakan mikrokontroller berbasis Arduino.
Dalam contoh ini saya menggunakan Arduino Uno.
Berikut contoh rangkaiannya :

Tabel Pin LCD dan Port Arduino


Pin LCD

Pin Arduino

Pin 1 (GND)

GND

Pin 2 (VCC)

+5V

Pin 3 (VSS)

Potentio 50K

Pin 4 (RS)

PORT 12

Pin 5 (R/W)

GND

Pin 6 (E)

PORT 11

Pin 7

Pin 8

Pin 9

Pin 10

Pin 11 (D4)

PORT 5

Pin 12 (D5)

PORT 4

Pin 13 (D6)

PORT 3

Pin 14 (D7)

PORT 2

Pin 15 (LED +)

+5V

Pin 16 (LED -)

GND

Silahkan rangkaiakan LCD dan arduino sesuai gambar dan keterangan di atas.
Setelah selesai merangkai semua silahkan buka program Arduino anda. dan
tuliskan code berikut ini :
// panggil librarynya:
#include <LiquidCrystal.h>
// inisialisasi PORT yang akan digunakan
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
void setup() {
// Setting LCD kolom dan baris:
lcd.begin(16, 2);
// Tulisan yang akan di tampilkan.
lcd.print("hello, world!");
}
void loop() {
// set kursor kolom 0, baris 1
// (note: menghitung baris dimulai dari 0):
lcd.setCursor(0, 1);
// menampilkan angka setiap 1000 milisecond:
lcd.print(millis()/1000);
}

Atau dapat buka langsung pada File --> Examples --> LiquidCrystal -->
HelloWorld.
Jangan lupa pilih jenis arduino yang di pakai. Dalam contoh ini saya
menggunakan Arduino Uno. Pilih Tools --> Board ---> Arduino Uno.
http://techno-apk.blogspot.com/2014/02/menggunakan-lcd-16-x-2-di-arduinouno.html

Search This Blog

Link Teman

HOME

MANGA

EPISODE

Banner Exchange

TRICK

MOVIE

SOFTWARE, GAME

Home Unlabelled Cara Membuat Program Sederhana dan Simulasi Arduino pada ISIS
Cara Membuat Program Sederhana dan Simulasi Arduino pada ISIS
Posted by Herry Kurni Abri - Sep 1 comments
Cara Membuat Program Sederhana dan Simulasi Arduino pada ISIS

Berikut adalah Contoh Program Sederhana pada Arduino, kali ini saya akan
mengshare Program "Blink"
1. Buka Program Arduino
Klik kanan run as administrator atau bisa klik dua kali, tampilannya akan ada
seperti gambar dibawah ini :

Gambar1

2. Tuliskan Sintax atau Program Sederhana Berikut Ini (perhatikan Contoh


Gambar)

int
void

led

=
setup()
pinMode(led,

13;
{
OUTPUT);

}
void

loop()

digitalWrite(led,

HIGH);
delay(1000);

digitalWrite(led,

LOW);
delay(1000);

Gambar 2

3. Lakukan kompilasi program yang telah dituliskan untuk mengecek kesalahan


penulisan sintaks. Klik menu centang (Verify) untuk melakukan proses kompilasi
program (Perhatikan Lingkaran Merah)

Gambar 3.1

Bila terjadi Kesalahan silahkan cek kembali Programnya , apabila tidak terjadi
kesalahan akan tampak seperti gambar dibawah :

Gambar 3.2

4.Setelah itu kita buka Progam ISIS.


Klik kanan run adminstrator or klik dua kali maka tampilannya akan seperti ini:

Gambar 4.1

Gambar 4.2

5.Setelah itu Klik menu Pick untuk mengambil komponen pada simulasi

Gambar 5.1

Sebagai Contoh kita pick Komponen Arduino :

Gambar 5.2

Lalu Klik Oke maka hasilnya akan sperti ini :

Gambar 5.3

6. Pick semua Komponen yg dibutuhkan, kali ini kita hanya akan memerlukan
Arduino Uno, resistor 1 buah dan 1 buah led berwarna biru . setelah di pick maka
hubungkan (connect) masing2 komponen seperti gambar berikut ini :

Gambar 6
7. setelah komponen selesai di pick , agar simulasi pada ISIS bisa di jalankan klik
dua kali pada gambar simulai arduino diatas , lalu kita kembali pada skech
(software) pada arduino dan copykan satu baris diatas list paling bawah pada
software arduino dan paste pada softwar simulasi ISIS tadi (perhatikan Lingkaran
merah) Perhatikan gambar berikut :

Gambar 7.1

Gambar 7.2

8. Setelah itu Klik ok , lalu Play simulasi di pojok kanan bawah, apabila software
bekerja maka LED akan berwarna BIRU

Gambar 8

http://faizmechatronic.blogspot.com/2013/09/normal-0-false-false-false-en-us-xnone_16.html

Introduction

Ah yes, it is finally time to make your Arduino do something! We're going to start with the
classic hello world! of electronics, a blinking light.
This lesson will basically get you up and running using the Arduino software and uploading a
sketch to the Arduino board. Once you've completed this step we can continue to the really
exciting stuff, which is when we start writing our own sketches!
These instructions mostly show Windows software. Except when indicated, the software
(should be) identical on all platforms. Linux will be added once I figure out how to get it
working (yay)
Do you have everything you need?

Not much is needed for this lesson, just a USB cable and an Arduino. If you have an older
Arduino you may also need an LED. Any LED is fine as long as it looks sorta like the photo,
with a plastic bulb and two legs
Make sure you've gone through Lesson 0 first!

Assembled
Arduino board,
preferrably a
Diecimila (or
whatever the
latest version
is)

Adafruit

$3
5

Adafruit

Download the Software

USB Cable.
Standard A-B
cable is
required. Any
length is OK.

Or any
computer
supply
store

LED - Optional
Nearly any LED
is OK, as long
as it has two
wire legs. This
part is only
required for NG
rev c Arduinos
(and maybe
other older
ones).
Diecimila
Arduino's have
this part 'builtin'

Any
electroni
$1
cs supply
store

$5

The first thing to do is download the Arduino software.


Go to the Arduino Software Download page and grab the right file for your OS. As of Sept
2007 the version is 009 but you should use whatever is most recent.
The packages are quite large, 30-50 MB so it may take a while to finish

Unpack and Install

Extract the package onto the Desktop

Windows

Mac OS X

Windows

Mac OS X
Startup!

Double click the Arduino software icon

Windows

Mac OS X
To open up the workspace

I think I get the red error text shown because I already have Arduino installed. Either way, it
isn't a problem if you do or don't see it.

Select chip

The first step is to configure the Arduino software for the correct chip. Almost all Arduinos
use the ATmega168, but there's a chance you have an ATmega8. Look for the chip on the
Arduino that looks like this:

If the text says ATMEGA8-16P then you have an atmega8 chip. If the text says
ATMEGA168-20P then you have an atmega168 chip. If it says "ATMEGA328P-20P" you
have an atmega328p chip

Make sure the correct chip is selected (this picture is really old, will be fixed soon). This
preference is saved so you only have to set it once, the program will remember next time it's
run.
Select port

Next, its time to configure the Serial Port (also known as the COM Port). Go back to lesson 0
to remind yourself of which port it is. On a PC it will probably be something like COM3 or
COM4. On a Mac it will be something like tty.usbserial-xxxxx

Windows port selection

Mac port selection


This preference is saved so you only have to set it once, the program will remember next time
it's run.
However, if you have multiple Arduino's, they may be assigned difference COM ports. So
every time you plug in a new Arduino, double check that the correct port is selected.
Open blink sketch

Sketches are little scripts that you can send to the Arduino to tell it how to act. Let's open up
an Example Sketch. Go to the File menu -> Sketchbook -> Examples -> Digital -> Blink

The window should now look like this, with a bunch of text in the formerly empty white
space and the tab Blink above it

Verify / Compile

The first step to getting a Sketch ready for transfer over to the arduino is to Verify/Compile
it. That means check it over for mistakes (sort of like editing) and then translate it into an
application that is compatible with the Arduino hardware.

After a few seconds, you should see the message Done compiling. in the Status Bar and
Binary Sketch Size: in the Notification area. This means the sketch was well-written and is
ready for uploading to the Arduino board!

Reset (NG only)

To tell the Arduino that it should prepare itself for a new Sketch upload, you must reset the
board. Diecimila Arduino's have built-in auto-reset capability, so you don't need to do
anything. Older Arduinos, such as NG, must be manually reset before uploading a sketch. To
do that simply press the black button on the right hand side of the board, shown here.

Upload

Now it's time to upload. Make sure the Arduino is plugged in, the green light is on and the
correct Serial Port is selected.
If you have an NG Arduino, press the Reset Button now, just before you select the Upload
menu item.
Select Upload to I/O Board from the File menu

After a few seconds you should get this screen, with the message Done uploading. in the
status bar.

If you get the following error message "avrdude: stk500_getsync(): not in sync:
resp=0x00" that means that the Arduino is not responding

Then check the following:

If you have a NG Arduino, did you press reset just before selecting Upload
menu item?

Is the correct Serial Port selected?

Is the correct driver installed?

Is the chip inserted into the Arduino properly? (If you built your own
arduino or have burned the bootloader on yourself)

Does the chip have the correct bootloader on it? (If you built your own
arduino or have burned the bootloader on yourself)

If you get the following error message:

It means you dont have a serial port selected, go back and verify that the correct
driver is installed (lesson 0)
and that you have the correct serial port selected in the menu.

If you get the following error Expected signature for ATMEGA

Then you have either the incorrect chip selected in the Tools menu or the wrong bootloader
burned onto the chip

If you get the following error: can't open device "COM10": The system cannot find the file
specified (under Windows, COM port value may vary)

It means that you have too many COM ports (maybe you've got 9 Arduinos?) You should
make sure that the port is numbered as low as possible. You can use a program like FTClean
to clear out old COM ports you aren't using anymore. Once you've cleaned out the ports,
you'll have to reinstall the driver again (see lesson 0).
Alternately, if you're sure that the ports are not used for something else but are left over from
other USB devices, you can simply change the COM port using the Device Manager. Select
the USB device in the Device Manager, right click and select Properties

Then click Advanced... and in the next window change the COM port to something like
COM4 or COM5. Don't forget to select the new port name in the Arduino software. The
lower port names may say (in use) but as long as the other USB devices aren't plugged in, it
shouldn't be a problem. This is a little riskier than just using FTClean...
Video of all steps
Here is a video showing the timing of the steps described so far.

Insert LED (NG Arduinos)

Some older Arduinos don't have a built in LED, its easy to tell if yours does or not

If you have a Diecimila or other Arduino with a built in LED you will see a translucent part
as shown

If you have an NG rev C or other Arduino without an LED, the translucent part will not be
there, and instead you will see two silver dots

If you don't have an LED, you'll need to add your own. Any LED will do, as long as it has
two legs and kinda looks like the one shown here. LEDs are directional components. That
means if you put it in backwards it will not work! To help you put the LED in right, the LED
factory cuts the legs at different lengths. The longer leg goes in the hole marked 13 and the
shorter one goes in the hole marked GND

Watch!

If you have a Diecimila Arduino, the upload process is quite fast, just start the Upload from
the software. The board will automatically reset itself, transfer the sketch and start the sketch.
The little translucent LED will start blinking

Click To Play

If you have an NG arduino, make sure the LED is inserted as indicated before. Here is a
video of the entire uploading process. Right after I press the Reset Button I start the sketch
upload. There is a short wait while the software prepares to transfer the sketch. Then the two
small orange lights blink, indicating the sketch is being transfered. When its done, there is a 7
second delay until the sketch starts.

Click To Play
If you don't get a blinking LED, make sure you put the part in the right way, in
the correct holes, and perhaps try a different LED as it may be bad.
http://www.ladyada.net/learn/arduino/lesson1.html

Belajar Program Arduino


Ditulis oleh tras rustamaji pada Sel, 03/11/2014 - 22:42

Tulisan ini akan membahas tentang cara membuat program Arduino dengan menggunakan
Arduino IDE (Integrated Development Environment), yaitu tools yang akan kita gunakan
pada semua proyek Arduino kita. Tools ini juga meng-compile, debugging, dan sekaligus
untuk upload program kita ke Arduino board. Kalau baru mengenal Arduino, silakan dibaca
dulu artikel ini : http://www.rustamaji.net/arduino/dari-mana-mulai-belajar-arduino
Kalau belum punya, silakan download gratis di http://arduino.cc/en/Main/Software, tersedia
untuk Windows, Mac OS, dan Linux bahkan source code nya sehingga kalau perlu bikin
Arduino IDE untuk operating system lainnya bisa compile sendiri
Code Program Arduino biasa disebut sketch dan dibuat menggunakan bahasa pemrograman
C. Hey!, itu gampang lagi, dibanding jaman saya dulu harus pakai Assembler dan PALASM
untuk membuat program mikro kontroller. Belajar sebentar kita akan paham. Program atau
sketch yang sudah selesai ditulis di Arduino IDE bisa langsung dicompile dan diupload ke
Arduino Board. Tidak perlu lagi memprogram device seperti PAL pada jaman dahulu
Secara sederhana, sketch dalam Arduino dikelompokkan menjadi 3 blok (lihat gambar di
atas):
1. Header

2. Setup
3. Loop

Tentu saja, untuk program yang lebih kompleks akan ada blok lain berupa fungsi-fungsi
pendukung. Tetapi untuk kali ini kita fokus pada ketiga blok ini
Header
Pada bagian ini biasanya ditulis definisi-definisi penting yang akan digunakan selanjutnya
dalam program, misalnya penggunaan library dan pendefinisian variable. Code dalam blok
ini dijalankan hanya sekali pada waktu compile. Di bawah ini contoh code untuk
mendeklarasikan variable led (integer) dan sekaligus di isi dengan angka 13
int led = 13;

Setup
Di sinilah awal program Arduino berjalan, yaitu di saat awal, atau ketika power on Arduino
board. Biasanya di blok ini diisi penentuan apakah suatu pin digunakan sebagai input atau
output, menggunakan perintah pinMode. Initialisasi variable juga bisa dilakukan di blok ini
// the setup routine runs once when you press reset:
void setup() { // initialize the digital pin as an output.
pinMode(led, OUTPUT);
}
OUTPUT adalah suatu makro yang sudah didefinisikan Arduino yang berarti = 1.

Jadi perintah di atas sama dengan pinMode(led, 1);

Suatu pin bisa difungsikan sebagai OUTPUT atau INPUT. JIka difungsikan sebagai output,
dia siap mengirimkan arus listrik (maksimum 100 mA) kepada beban yang
disambungkannya. Jika difungsikan sebagai INPUT, pin tersebut memiliki impedance yang
tinggi dan siap menerima arus yang dikirimkan kepadanya.

Loop
Blok ini akan dieksekusi secara terus menerus. Apabila program sudah sampai akhir blok,
maka akan dilanjutkan dengan mengulang eksekusi dari awal blok. Program akan berhenti
apabila tombol power Arduino di matikan. Di sinilah fungsi utama program Arduino kita
berada.
void loop() {
digitalWrite(led, HIGH); // nyalakan LED
delay(1000); // tunggu 1000 milidetik

digitalWrite(led, LOW); // matikan LED


delay(1000); // tunggu 1000 milidetik
}

Perintah digitalWrite(pinNumber,nilai) akan memerintahkan arduino untuk menyalakan


atau mematikan tegangan di pinNumber tergantung nilainya. Jadi perintah di atas
digitalWrite(led,HIGH) akan membuat pin nomor 13 (karena di header dideklarasi led =
13) memiliki tegangan = 5V (HIGH). Hanya ada dua kemungkinan nilai digitalWrite yaitu
HIGH atau LOW yang sebetulnya adalah nilai integer 1 atau 0
Kalau sudah dibuat program diatas, selanjutnya kita ambil kabel USB yang diikutsertakan
pada saat membeli Arduino, pasangkan ke komputer dan board arduino, dan upload
programnya. Sim salabim, lampu LED yg ada di Arduino board kita akan kelap-kelip.
Sekedar informasi, sebuah LED telah disediakan di board Arduino Uno dan disambungkan ke
pin 13.
Selain blok setup() dan loop() di atas kita bisa mendefinisikan sendiri blok fungsi sesuai
kebutuhan. Kita akan jumpai nanti pada saat pembahasan proyek
http://www.rustamaji.net/id/arduino/belajar-program-arduino

BRANKAS ILMU

Ilmu sederhana namun bermanfaat

Beranda

About

TIMER DAN COUNTER


Desember 2, 2013
mechatronicsdepartment Uncategorized Tinggalkan komentar
(TIMER DAN COUNTER)
TUJUAN :
1. Mampu membuat program yang menggunakan fitur timer sebagai
pewaktu.
2. Mampu membuat program yang menggunakan fitur timer sebagai
penghitung.

3. Mempu menggunakan fitur timer pada mikrokontroler untuk membuat jam


digital sederhana.

PERALATAN :
1. Komputer
2. Arduino Uno
3. Kabel USB tipe B

1 set
1 pcs
1 pcs

4. Project Board

1 pcs

5. Kabel jumper

secukupnya

6. LED

1 pcs

7. Resistor 330

1 pcs

8. Switch pushbutton

1 pcs

9. LCD

1 pcs

10.Potensiometer 10K

1 pcs

PERCOBAAN :
6.1 Penggunaan Timer overflow Untuk LED Blinking
Pada percobaan kali ini akan dibuat program untuk membuat led berkedip per 500
miliseconds. Pada dasarnya LED akan toogle (berubah kondisinya) setiap terjadi interupsi
timer overflow. Nilai register timer di-set sedemikian rupa sehingga waktu overflow per 500
miliseconds.
Prosedur :
Buatlah rangkaian seperti Gambar 6.1.

Tuliskan sintaks program berikut ini, kemudian lakukan kompilasi dan upload program ke
sistem minimum Arduino.

Buka Serial Monitor pada Arduino IDE, pastikan baudrate pada Serial Monitor adalah 9600.
Kemudian amati teks yang diutampilkan pada Serial Monitor. Amati juga kondisi nyala dan
mati LED pada pin 12.
Tugas dan Pertanyaan :
1. Jika dilakukan perhitungan konfigurasi register pada sintaks program
Percobaan 6.1, timer 1 akan overflow setiap berapa miliseconds ?

1/fCLK x (FFFFh+1)=0.125uS x 34286 = 0.004285

TMAX = 1/fCLK x (FFFFh+1) x N=0.004285*256 = 19,72


2. Jelaskan perbedaan penggunakan delay dan timer overflow !
Perbedaaan anatara Delay dan overflow adalah , delay adalah waktu tunda akan tetapi kita
tidak bisa memasukkan program, kalau timer overflow adalah bilangan penghitung yang bila
selama menghitung kita dapat menyisipkan program.
6.2 Jam Digital Menggunakan Timer
Pada percobaan kali ini akan dibuat program sederhana yang berfungsi sebagai jam digital
dengan memanfaatkan fitur timer mikrokontroler. Timer akan dikonfigurasi sehingga terjadi
overflow setiap 1 detik. Tiap timer terjadi overflow, variable detik, menit dan jam akan di
update nilainya. Nilai variable tersebut akan ditampilkan pada LCD.
Prosedur :
Buatlah rangkaian seperti Gambar 6.2.

Tuliskan sintaks program berikut ini, lakukan kompilasi dan upload program.

Tugas dan Pertanyaan :


1. Ubahlah sintaks program pada Percobaan 6.2 sehingga jam menampilkan
waktu saat ini !

#include<LiquidCrystal.h>
LiquidCrystal lcd(2,3,4,5,6,7);
unsigned int jam=21, menit=12, detik=03;
boolean led = 0;

ISR(TIMER1_OVF_vect) {
TCNT1H=0xC2;
TCNT1L=0xF7;
detik++;

if(detik>=60) {
detik = 0;
menit++;
if(menit>=60) {
menit = 0;
jam++;
if(jam>=24) {
jam = 0;
}
}
}
}

void initTimer1() {
TCCR1A=0x00;
TCCR1B=0x05;
TCNT1H=0xC2;
TCNT1L=0xF7;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;

OCR1BL=0x00;
TIMSK1=0x01;
sei();
}

void setup() {
lcd.begin(16,2);
lcd.clear();
initTimer1();
}

void loop() {
lcd.clear();
lcd.setCursor(0,0);
lcd.print(Jam Digital);
lcd.setCursor(0,1);
lcd.print(jam,DEC);
lcd.print(:);
lcd.print(menit,DEC);
lcd.print(:);
lcd.print(detik,DEC);
delay(500);
}

1. Jika dilakukan perhitungan dengan konfigurasi register pada sintaks


program Percobaan 6.2, timer 1 akan overflow setiap berapa miliseconds ?
2. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 6.2 !

include<LiquidCrystal.h> = memanggil library dari LCD.

LiquidCrystal lcd(2,3,4,5,6,7); = menginisialisasi pin pada LCD.

unsigned int jam, menit, detik; = menginilissasi variabel jam,menit dan


detik.

boolean led = 0; = variabel led bertipe bolean (0 atau 1.

ISR(TIMER1_OVF_vect) { = Interupt service routin untuk timer 1.

TCNT1H=0xC2; = Memasukan nilai timer1 register H hex=122(c2).

TCNT1L=0xF7;= Memasukan timer1/counter register L hex=157.

detik++; = tambahkan nilai di variabel detik.

if(detik>=60) { = kondisi jika detik lebih besar dari 60.

detik = 0;= masukan nilai 0 ke variabel detik.

menit++; = tambahkan nilai variabel menit.

if(menit>=60) { = kondisi jika nilai menit lebih besar dari 60.

menit = 0; = variabel menit nilai nya 0.

jam++; = tambahkan nilai pada variabel jam.

if(jam>=24) {

jam = 0; = masukkan nilai 0 pada variabel jam.

void initTimer1() { = void untuk timer.

TCCR1A=0x00; = nilai timer1 register 1 A = 0.

TCCR1B=0x05; = nilai timer1 register 1B = hexadesimal 05.

TCNT1H=0xC2; = nilai counter/timer 1H penghitung sampai C2(122)


/presceler.

TCNT1L=0xF7; = nilai counter/timer 1L akan menghitung sampai


F7(157)/presceler.

TIMSK1=0x01; = Timer/Counter Interrupt Mask Register.

= kondisi jika nilai variabel jam lebih besar dari 24.

sei(); = global intrupsi.

void setup() { = void untuk default.

lcd.begin(16,2); = letak pada LCD ( baris, kolom).

lcd.clear(); = untuk menghapus tampilan pada LCD.

initTimer1(); = masukan program dalam void initTimer1.

6.3 Counter Mode Falling Edge


Pada percobaan kali ini akan dibuat program yang berfungsi untuk menghitung jumlah
penekanan switch dan input counter. Konfigurasi counter menggunakan mode falling edge.
Prosedur :
Buatlah rangkaian seperti pada Gambar 6.3.

Tuliskan sintaks program berikut ini, kemudian lakukan kompilasi dan upload program ke
system minimum Arduino.

KOMUNIKASI SERIAL
Desember 2, 2013
mechatronicsdepartment Uncategorized Tinggalkan komentar
TUJUAN :
1. Memahami cara mengirimkan dan menerima data melalui periperal UART
Arduino.
2. Mampu membuat program untuk mengirimkan data berbasis teks dan
berbasis byte.
3. Mampu membuat program untuk menerima data secara pooling dan
secara interupsi serial.

PERALATAN :
1. Komputer

1 set

2. Arduino Uno

1 pcs

3. Project Board

1 pcs

4. LCD

1 pcs

5. Potensiometer 10K

1 pcs

6. Kabel Jumper

secukupnya

PERCOBAAN :
5.1 Mengirim Data Teks
Percobaan kali ini akan dibuat program untuk mengirimkan data teks ke komputer melalui
komunikasi serial. Pada percobaan ini contoh teks yang akan dikirimkan adalah Hello
World. Pengiriman data akan menggunakan baudrate 9600.
Prosedur :
Tuliskan sintaks program dibawah ini, kemudian lakukan kompilasi dan upload program ke
system minimum Arduino.

Buka Serial Monitor pada Arduino IDE.

Pastikan konfigurasi baudrate adalah 9600 seperti gambar 5.2.

Pastikan data teks Hello Word yang dikirimkan Arduino diterima oleh Serial Monitor.
Tugas dan Pertanyaan :
1. Gantilah parameter input pada fungsi serial.print sesuai dengan Tabel 5.1.
Amati data yang diterima pada HTerm, kemudian isilah Tabel 5.1 di bawah
ini !

Tabel 5.1 Daftar teks yang dikirimkan pada program

2. Gantilah fungsi Serial.print menjadi Serial.println, kemudian tuliskan amati data yang
diterima oleh komputer. Jelaskan perbedaan penggunaan fungsi Serial.print dan
Serial.println !
Perbedaan antara Serial.print dan Serial.printIn adalah pada bila menggunakan Serial.print,
pada tampilan teksnya akan terus muncul kesamping sedangkan bila menggunakan
Serial.printIn teksnya akan meng-enter kebawah.

1. Tambahkan karakter \r\n pada akhir baris teks pada Tabel 5.1. Amati data
yang ditampilkan pada komputer. Jelaskan fungsi karakter \r\n pada
komunikasi serial !

\r = berfungsi sebagai tab.


\n = berfungsi sebagai enter.
1. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 5.1 !
1. void setup() = berfungsi untuk settingan awal pada program.
2. Serial.begin(9600) = settingan baudrate nya adalah 9600 ,
baudrate adalah kecepatan pengirimana dalam 1 detik.
3. void loop() = berfungsi untuk tempat peletakan coding yang akan
diproses atau dijalankan.
4. Serial.println(Hello World); = berfungsi untuk menampilkan teks
hello World pada serial monitor.

e.

Delay(2000); = berfungsi untuk menunda selama 2 detik.

5.2 Mengirim Data byte


Pada percobaan kali ini akan dibuat program untuk mebgirimkan data byte ke kemputer
melalui komunikasi serial. Pengiriman data akan menggunakan baudrate 115200.
Prosedur :
Tuliskan sintaks program dibawah ini, kemudian lakukan kompilasi dan ipload program pada
ke system minimum Arduino.

Buka aplikasi HTerm pada komputer, pastikan konfigurasi pada HTerm seperti gambar di
bawah ini.

Klik tombol Connect, kemudian perhatikan data yang ditampilkan pada bagian Receive Data.
Pastikan data tersebut sama dengan data yang dikirmkan oleh Arduino.
Tugas dan Pertanyaan :
Gantilah parameter input untuk fungsi Serial.Write dengan data pada Tabel 5.2. Amati data
yang diterima pada HTerm, kemudian isilah Tabel 5.2!

Gantilah konfigurasi dari HTerm menjadi seperti dibawah ini, perhatikan yang diterima.
Kenapa data yang diterima berubah menjadi huruf ? jelaskan !

1. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 5.2 !
1. void setup() = berfungsi untuk settingan awal pada program.
2. Serial.begin(115200); = settingan baudrate nya adalah 115200 ,
baudrate adalah kecepatan pengirimana dalam 1 detik.
3. void loop() = = berfungsi untuk tempat peletakan coding yang akan
diproses atau dijalankan.
4. Serial.write(0x41); = untuk menulis angka 41.
5. Serial.write(0x42); = untuk menulis angka 42.
6. Serial.write(0x43); = untuk menulis angka 43.
7. Serial.write(0x44); = untuk menulis angka 44.
8. Serial.write(0x45); = untuk menulis angka 45.

i.

delay(2000); = berfungsi untuk menunda selama 2 detik.

5.3 Menerima Data dari UART dengan Sistem Pooling


Pada percobaan kali ini akan dibuat program untuk menerima data teks dari komputer melalui
komunikasi serial. Proses penerimaan data akan menggunakan system pooling (menunggu).
Data yang akan diterima Arduino ditampilkan pada LCD. Penerimaan data akan emnunggu
baudrate 9600.
Prosedur :

Buatlah rangkaian seperti Gambar 5.5.

Tuliskan sintaks program berikut ini, kemudian lakukan kompilasi dan upload program.

Tugas dan Pertanyaan :


Buka Serial Monitor pada Arduino pastikan konfigurasi Serial Monitor sama seperti pada
Gambar 5.6.

Ketikkan sembarang kata untuk dikirimkan (kurang dari 16 karakter), kemudian tekan send.
Isilah Tabel 5.3 !

1. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 5.3 !
1. #include<LiquidCrystal.h> = berfungsi sebagai untuk pemanggilan
library untuk LCD.
2. LiquidCrystal lcd=(2,3,4,5,6,7); =berfungsi untuk pengisialisasian
pada pin LCD.
3. String textFromSerial = ; = berfungsi untuk mendeklarasikan
textFromSerial sebagai string.
4. void setup() = berfungsi untuk settingan awal pada program.
5. lcd.begin(16,2); = berfungsi untuk tampilan LCD (kolom , baris)
6. lcd.clear(); = berfungsi untuk menghapus tampilan pada LCD.

7. lcd.setCursor(0,0); = berfungsi untuk menampilkan text pada baris


pertama LCD.
8. lcd.print(Data From Serial) = berfungsi untuk menampilkan text
Data From Serial pada LCD.
9. Serial.begin(9600); = settingan baudrate nya adalah 9600 ,
baudrate adalah kecepatan pengirimana dalam 1 detik.
10.void loop() = sebagai program looping.
11.while(Serial.available()>0) = untuk mengecek serial komunikasi.
12.char data = Serial.read(); = berfungsi untuk membaca data serial.
13.if(data == \n)
14.lcd.setCursor(0,1); = Menampilkan text pada baris ke dua LCD
15.lcd.print(textFromSerial); = Menampilkan text yang dikirim melalui
serial komukasi
16.textFromSerial=;
17.Else
18.if(data!=\r) //jika data tidak ada
19.textFromSerial += data; = untuk menampilkan text data pada LCD.

5.4 Menerima Data dari UART dengan interupsi


Pada percobaan kali ini akan dibuat program untuk menerima data teks sama seperti
Percobaan 5.3. pada percobaan kali ini proses penerimaan data akan menggunakan interupsi
serial. Data yang diterima oleh Arduino akan ditampilkan pada LCD. Penerimaan data akan
menggunakan baudrate 9600.
Percobaan :
Tuliskan sintaks program dibawah ini, lakukan kompilasi dan upload program.

Tugas dan pertanyaan :


Buka Serial Monitor pada Arduino IDE, sesuaikan konfigurasi Serial Monitor sesuai dengan
Gambar 5.7.

Ketikkan sembarang teks untuk dikirimkan, tekan send, Lengkapilah Tabel 5.4 !

1. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 5.4 !
1. #include <LiquidCrystal.h> = berfungsi untuk memanggil library
untuk LCD.
2. #define FOSC 16000000 = untuk menetapkan nilai FOSC bernilai
16000000.
3. LiquidCrystal lcd (2, 3, 4, 5, 6, 7); = berfungsi untuk menginisialisasi
pin pada LCD.
4. String dataSerial; = mendekelarasikan dataSerial sebagai string.
5. int ubrr = FOSC/16/baudrate-1; = Mengisi register UBRR0H dan
UBRR0L untuk menentukan baudrate.
6. UBRR0L |= ubrr; = Mengaktifkan saluran transmitter dan receiver.
7. UCSR0B |= (1<<RXEN0)|(1<<TXEN0); = Menggunakan format data
8 bit.
8. UCSR0C |= (0<<UCSZ02)|(1<<UCSZ01)|(1<<UCSZ00); =
Menggunakan 1 stop bit.
9. UCSR0C |= (0<<USBS0); = No Parity.
10.UCSR0C |= (0<<UPM01)|(0<<UPM00); = Mengaktifkan RX
interrupt.
11.UCSR0B |= (1<<RXCIE0); = Rutin yang akan dijalankan jika terjadi
interupsi.
12.lcd.clear(); = berfungsi untuk menghapus tampilan pada LCD.
13.lcd.setCursor(0,0); = berfungsi untuk menampilkan text pada baris
pertama LCD.
14.lcd.print(Incoming Data); = berfungsi untuk menampilkan text
Incoming Data pada baris pertama di LCD.

15.lcd.setCursor(0,1); = berfungsi untuk menampilkan text pada baris


ke dua LCD.
16.lcd.print(dataSerial);= berfungsi untuk menampilkan data yg dikirim
melalui serial.
17.if(data!=\r) //jika data tidak ada.
18.dataSerial += data; = Jika tidak ada data maka tampilkan text
data.
19.void setup() = untuk settingan pada awal program.
20.lcd.begin(16,2); = tampilan pada LCD (kolom , baris).
21.lcd.clear(); = untuk menghapus tampilan pada LCD.
22.void loop() = program looping.
2. Jelaskan perbedaan penggunaan interupsi dan system pooling !

Interupsi adalah suatu kejadian yang akan menghentikan sementara jalan program saat itu.
Dengan interupsi, suatu alur program dapat dihentikan sementara untuk menjalankan suatu
subrutin, dan kemudian melanjutkan aliran program secara normal seperti tidak pernah ada
interupsi. Sedangkan sistem pooling adalah kondisi arduino menunggu pengiriman data
melalui serial.

INTERUPSI EKSTERNAL
Desember 2, 2013
mechatronicsdepartment Uncategorized Tinggalkan komentar
TUJUAN
1. Mampu membuat program untuk penggunaan fitur interupsi eksternal.
2. Memahami perbedaan mode interupsi eksternal ( falling, rising dan
change).

PERALATAN
1. Komputer

: 1 unit

2. Arduino Uno

: 1 pcs

3. Project Board

: 1 pcs

4. Kabel Jumper

: secukupnya

5. Switch pushbutton

: 2 pcs

6. LCD

: 1 pcs

7. Potensiometer 10K

: 1 pcs

PERCOBAAN :
4.1 Interupsi Eksternal dengan mode Falling
Pada percobaan kali ini akan dibuat program untuk memahami penggunaan interupsi
eksternal dengan mode falling. Dua buah switch akan dihubungkan pada pin interupsi
eksternal 0 (INT0) dan interupsi eksternal 1 (INT1). Penekanan switch akan menginterupsi
program utama (yang berada pada fungsi loop) dan memaksa untuk menjalankan rutin
interupsi yang telah dideskripsikan pada program.
Prosedur :
1. Rangkailah rangkaian pada gambar 4.1.

Gambar 4.1 Rangkaian percobaan 4.1


1. Tuliskan sintaks program berikut ini, kemudian lakukan kompilasi dan
upload program ke system minimum Arduino.

#include <LiquidCrystal.h>
LiquidCrystal lcd(A0,A1,A2,A3,A4,A5);
unsigned int countloop = 0;

void setup ()
{
lcd.begin(16,2);
lcd.clear();
attachInterrupt(0, rutinInterupsi0, FALLING);
attachInterrupt(1, rutinInterupsi1, FALLING);
}
void loop ()
{
lcd.setCursor(0,0); lcd.print(Main Program);
lcd.setCursor(0,1); lcd.print(CountLoop ); lcd.print(countloop);
countloop++;
delay(1000);
}
void rutinInterupsi0()
{
lcd.setCursor(0,0); lcd.print(int0 Program);
lcd.setCursor(0,1); lcd.print(Interrupt INT0);
delay(2000);
}
void rutinInterupsi1()
{
lcd.setCursor(0,0); lcd.print(Int1 Program);

lcd.setCursor(0,1); lcd.print(Interrupt INT1);


delay(2000);
}
Tugas dan Pertanyaan :
1. Biarkan program berjalan sehingga pada LCD nilai count loop increment
sampai diatas 5. Kemudian tekan salah satu switch yang terhubung pada
INT0 atau INT1 selama 5 detik kemudian lepaskan. Amati teks yang
ditampilkan pada LCD. Apakah yang akan terjadi jika switch ditekan ?
apakah yang akan terjadi jika switch dilepas ?
2. Jelaskan pada saat kapan terjadinya proses interrupt ?

4.2 Interupsi Eksternal dengan Mode Rising


Dua buah switch akan dihubungkan pada pin INT0 dan INT1 sama seperti percobaan 4.1.
penekanan switch akan menginterupsi program utama (yang berada pada fungsi loop) dan
memaksa untuk menjalankan rutin interupsi yang telah dideskripsikan pada program. Pada
percobaan mode interupsi yang digunakan adalah rising.
Prosedur :
1. Gantilah program pada 4.2 dengan sintaks program berikut ini, kemudian
lakukan kompilasi dan upload program ke system minimum Arduino.

#include <LiquidCrystal.h>
LiquidCrystal lcd(A0,A1,A2,A3,A4,A5);
unsigned int countloop = 0;
void setup ()
{
lcd.begin(16,2);
lcd.clear();
attachInterrupt(0, rutinInterupsi0, RISING);
attachInterrupt(1, rutinInterupsi1, RISING);

}
void loop ()
{
lcd.setCursor(0,0); lcd.print(Main Program);
lcd.setCursor(0,1); lcd.print(CountLoop ); lcd.print(countloop);
countloop++;
delay(1000);
}
void rutinInterupsi0()
{
lcd.setCursor(0,0); lcd.print(int0 Program);
lcd.setCursor(0,1); lcd.print(Interrupt INT0);
delay(2000);
}
void rutinInterupsi1()
{
lcd.setCursor(0,0); lcd.print(Int1 Program);
lcd.setCursor(0,1); lcd.print(Interrupt INT1);
delay(2000);
}
Tugas dan Pertanyaan :
1. Biarkan program berjalan sehingga pada LCD nilai count loop increment
sampai diatas 5. Kemudian tekan salah satu switch yang terhubung pada
INT0 atau INT1 selama 5 detik kemudian lepaskan. Amati teks yang
ditampilkan pada LCD. Apakah yang akan terjadi jika switch ditekan ?
apakah yang akan terjadi jika switch dilepas ?

2. Jelaskan pada saat kapan terjadinya proses interrupt ?


3. Kapankah interrupt mode falling terjadi ? kapankah mode interrupt mode
rising terjadi ?
4. Jelaskan !

4.3 Interupsi Eksternal dengan mode Any Change


Pada percobaan mode interupsi yang digunakan adalah any change. Dua buah switch akan
dihubungkan pada pin INT0 dan INT1. Penekanan switch akan membuat program utama
pada fungsi loop dan mengeksekusi rutin interrupt.
Prosedur :
1. Gantilah sintaks program pada percobaan 4.2 dengan sintaks berikut ini.
Lakukan kompilasi dan upload program ke system minimum Arduino.

#include <LiquidCrystal.h>
LiquidCrystal lcd(A0,A1,A2,A3,A4,A5);
unsigned int countloop = 0;
void setup ()
{
lcd.begin(16,2);
lcd.clear();
attachInterrupt(0, rutinInterupsi0, CHANGE);
attachInterrupt(1, rutinInterupsi1, CHANGE);
}
void loop ()
{
lcd.setCursor(0,0); lcd.print(Main Program);
lcd.setCursor(0,1); lcd.print(CountLoop ); lcd.print(countloop);

countloop++;
delay(1000);
}
void rutinInterupsi0()
{
lcd.setCursor(0,0); lcd.print(int0 Program);
lcd.setCursor(0,1); lcd.print(Interrupt INT0);
delay(2000);
}
void rutinInterupsi1()
{
lcd.setCursor(0,0); lcd.print(Int1 Program);
lcd.setCursor(0,1); lcd.print(Interrupt INT1);
delay(2000);
}
Desember 2, 2013
mechatronicsdepartment Uncategorized Tinggalkan komentar
TUJUAN :
1. Mampu membuat program untuk mengakses periperal masukan
analog dengan tegangan referensi internal, vcc, dan eksternal.
2. Mampu memahami pengaruh nilai tegangan referensi terhadap hasil
konversi Analog to Digital Converter (ADC).
3. Mampu membuat program untuk mengakses fitur analog komparator pada
mikrokontoler.

PERALATAN :

1. Komputer
2. Arduino Uno
3. Kabel USB tipe B

1 set
1 pcs
1 pcs

4. Project Board

1 pcs

5. Kabel jumper secukupnya

secukupnya

6. Potensiometer 10K

1 pcs

7. LCD 216

1 pcs

PERCOBAAN
3.1 Analog Input dengan Tegangan Referensi Internal (1,1 Volt)
Pada percobaan kali ini akan dibuat program untuk mengkonversi nilai tegangan analog dari
potensiometer menjadi nilai digital. Data hasil konversi akan ditampilkan pada LCD 216.
Tegangan referensi ADC yang digunakan adalah tegangan refrensi internal yang besarnya
adalah 1,1 volt.
Prosedur :
1. Rangkaialah rangkaian pada Gambar 3.1.

1. Tuliskan sintaks program di bawah ini, kemudian lakukan kompilasi dan


upload program ke sistem minimum Arduino.

Tugas dan pertanyaan :


1. Putarlah potensiometer sehingga terjadi perubahan tegangan dari 0 volt
sampai 1.5 volt dengan rentan perubahan 0.5 volt. Amati data yang
ditampilkan pada LCD, kemudian isilah Tabel 3.1 !

Tabel 3.1 Perbandingan data hasil perhitungan dan data pada LCD

1. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 3.1 !
1. #include <LiquidCrystal.h> : sintaks disamping merupakan sintaks
untuk menggunakan LCD pada Arduino.
2. LiquidCrystal lcd( ) : sebagai untuk insialisasi pin LCD yang akan
digunakan.
3. void setup ( ) : sebagai untuk insialisasi.
4. lcd.begin (16,2); : tampilan LCD , 16 = kolom 2 = baris.

5. lcd.clear; : untuk menghapus tampilan pada LCD.


6. lcd.setCursor(0,0); : peletakan kursor pada LCD
7. lcd.print( ADC Example on A0); : untuk menampilkan tulisan ADC
Example on A0.
8. analogReference(INTERNAL); : parameter input internal (1,1 volt).
9. void loop ( ) : sebagai looping.
10.unsigned int dataADC=analogRead(A0); : sebagai inisialisasi input
A0.
11.lcd.clear; : untuk menghapus tampilan pada LCD.
12.lcd.setCursor(0,1); : lpeletakan kursor pada LCD.
13.lcd.print(Value=); : untuk menampilkan tulisan Value=.
14.lcd.print(dataADC); : untuk menampilan data ADC.
15.Delay(500); : sebagai jeda.

3.2 Analog Input dengan Tegangan Referensi VCC


Pada percobaan kali ini akan dibuat program seperti pada Percobaan 3.1. Pada Percobaan 3.2
tegangan referensi ADC yang digunakan adalah tegangan VCC pada mikrokontroler.
Prosedur :
1. Gantilah sintaks program pada Percobaan 3.1 menjadi seperti di
bawah ini, kemudian lakukan kompilasi dan upload program.

Tugas dan Pertanyaan :


1. Putarlah potensiometer sehingga terjadi perubahan tegangan dari 0 volt
sampai 5 volt dengan rentan perubahan 1 volt, kemudian amati data yang
ditampilkan pada LCD dan isilah Tabel 3.2 !

Tabel 3.2 Perbandingan data perhitungan dan data pada LCD

1. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 3.1
1. #include <LiquidCrystal.h> : sintaks disamping merupakan sintaks
untuk menggunakan LCD pada Arduino.
2. LiquidCrystal lcd(2,3,4,5,6,7); : sebagai penginisialisasi pin yang
akan digunakan.
3. void setup() : sebagai penginisialisasi.
4. lcd.begin(16,2); : tampilan lcd 16= kolom 2= baris.
5. lcd.clear(); : untuk menghapus pada kolom LCD.
6. lcd.setCursor(0,0); : letak kursor pada lcd.
7. lcd.print(ADC Example on A0); : lcd menampilkan ADC Example
on A0.
8. analogReference(DEFAULT); : parameter input default ( 5 volt).
9. void loop() : sebagai looping.
10.unsigned int dataADC = analogRead(A0); : inisialisasi input A0
11.lcd.clear(); : untuk menghapus pada kolom LCD.
12.lcd.setCursor(0,1); : letak kursor pada LCD.
13.lcd.print(Value = ); : untuk menampilkan tulisan value =pada
LCD.

14.lcd.print(dataADC); : LCD menampilkan data ACD.


15.delay(500); : Waktu lamanya penjedaan.

1.3 Analog Input dengan Tegangan Refrensi Eksternal.


Pada percobaan kali ini akan dibuat program seperti pada Percobaan 3.1 dan Percobaan 3.2.
Tegangan refrensi ADC yang digunakan adalah tegangan refrensi eksternal yaitu tegangan
pada pinAREF. Pada percobaan kali ini besar tegangan pada pin AREF akan diset sebesar 4
volt. Sehingga dapat dikatakan bahwa besarnya tegangan refrensi yang digunakan adalah 4
volt.
Prosedur :
1. Rangkailah rangkaian pada Gambar 3.2

1. Tuliskan sintaks program dibawah ini, kemudian lakukan kompilasi dan


upload program ke sistem minimum Arduino.

1. Putar potensiometer R3 hingga tegangan pada pin AREF terukur 4 volt.

Tugas dan Pertanyaan :


1. Putarlah potensiometer R2 sehingga terjadi perubahan tegangan dari 0-5
volt dengan rentan perubahan 1 volt. Amati data yang ditampilkan pada
LCD, kemudian isilah tabel dbawah ini.

Tabel 3.3 Perbandingan data hasil perhitungn dan data pada LCD

1. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 3.3 !
2. #include <LiquidCrystal.h> : memanggil library untuk LCD.
3. LiquidCrystal lcd(2,3,4,5,6,7); : inisialisasi pin LCD yang akan digunakan.
4. void setup() : sebagai Penginisalisasi.
5. lcd.begin(16,2); : tampilan LCD kolom = 16 , baris = 2.
6. lcd.clear(); : untuk menghapus tampilan program sebelumnya pada
program.
7. lcd.setCursor(0,0); : letak kursor pada LCD.
8. lcd.print(ADC Example on A0); : untuk menampilkan tulisan ADC
Example on A0 pada LCD.
9. analogReference(EKSTERNAL); : parameter input internal ( 4 volt).
10.void loop() : untuk looping.
11.unsigned int dataADC = analogRead(A0); : sebagai inisialisasi input A0.
12.lcd.clear(); : untuk menghapus pada tampilan LCD.
13.lcd.setCursor(0,1); : letak kursor pada LCD.

14.lcd.print(Value = ); : untuk menampilkan tulisan value = pada LCD.


15.lcd.print(dataADC); : LCD menampilkan data ACD
16.delay(500); : lamanya penjedaan.

1.4 Analog Comparator


Pada Percobaan 3.4 akan dibuat program untuk mengakses fitur analog komparator pada
mikrokontroler. Pada percobaan kali ini dua buat input analog akan dihubungkan ke input pin
komparator yaitu AIN0 (pin 6) dan AIN1 (pin 7). Output analog komparator akan ditampilkan
pada LCD.
Prosedur :
1. Rangkailah rangkaian pada Gambar 3.3.

1. Tuliskan sintaks program dibawah ini, kemudian lakukan kompilasi dan


upload program ke sistem minimum Arduino.

Tugas dan Pertanyaan :


1. Putarlah potensiometer R2 dan R3, amati teks pada LCD sehingga
perubahan output. Apakah yang terjadi jika tegangan pada pin AIN0 lebih
besar dari tegangan pada pin ANI1, jelaskan !

Karena tegangan yang ada pada pin 6 lebih besar daripada pin 7.
1. Apakah yang terjadi jika tegangan pada pin AIN0 lebih kecil dari tegangan
AIN1, jelaskan !

Yang terjadi adalah pada LCD akan muncul tulisan comparator low karena nilai pada pin 6
lebih kecil daripada pin 7.
1. Jelaskan prinsip kerja dari analog komparator pada sistem minimum
Arduino ! apakah prinsip kerja komparator pada mikrokontroler sama
dengan prinsip kerja komparator pada opamp ?

Sama , prinsip kerja dari analog komparator adalah sebagai pembanding , pada komparator
ADC sinyal dari analog dengan tegangan referensi dibandingakan kedalam bentuk besaran.
1. Jelaskan fungsi tiap baris dari sintaks program pada Percobaan 3.4 !

2. #include <LiquidCrystal.h> : sebagai inisialisasi library LCD.


3. LiquidCrystal lcd(A0,A1,A2,A3,A4,A5); : sebagai inisialisasi inputan LCD.
4. boolean comparatorOutput; : inisialisasi Boolean operator.
5. ISR (ANALOG_COMP_vect) : program interupt.
6. comparatorOutput = true; : inisialisasi nilai true.
7. ADCSRB = 0; : ADCSRB = bernilai 0.
8. lcd.begin(16,2); : inisialisasi dimensi LCD.
9. lcd.clear(); : menghapus tampilan pada LCD.
10.lcd.setCursor(0,0); : inisialisasi peletakan kursor.
11.lcd.print(Analog Comparator);
comparator.

: LCD akan menampilkan analog

12.if (comparatorOutput==true) : jika syarat memenuhi lakukan eksekusi,


maka program akan melaksanakan fungsi tersebut.
13.lcd.setCursor(0,1); : sebagai peletakan kursor.
14.lcd.print(Comparator High); : LCD akan menampilkan komparator
high.
15.comparatorOutput = false; : Komparator output bernilai false.
16.lcd.setCursor(0,1); : sabagai penginisialisasi kursor.
17.lcd.print(Comparator Low );
comparator low

: LCD akan menampilkan

18.delay(1000); : penjedaan.
19.lcd.clear(); : untuk menghapus tampilan pada LCD.

PERIPERAL MASUKAN DAN KELUARAN DIGITAL


Oktober 1, 2013
mechatronicsdepartment Uncategorized Tinggalkan komentar
TUJUAN :
1. Mampu membuat program untuk mengakses periperal masukan digital menggunakan
fungsi Arduino.

2. Mampu membuat program untuk mengakses periperal masukan digital menggunakan


konfigurasi register mikrokontroler.
3. Mampu membuat program untuk mengakses periperal keluaran digital menggunakan
fungsi Arduino.
4. Mampu membuat program untuk mengakses periperal keluaran digital
menggunakan konfigurasi register mikrokontroler.
ALAT DAN BAHAN :
1. Komputer (1set)
2. Arduino Uno (1pcs)
3. Kabel data USB tipe B (1pcs)
4. Project Board (1pcs)
5. Kabel jumper (secukupnya)
6. Buzzer 5V (1pcs)
7. Transistor 2N2222 (1pcs)
8. Resistor 2K2 (1 pcs)
9. LED (6pcs)
10 Resistor 330 Ohm (6pcs)
PERCOBAAN :
2.1 Pemrograman Digital Output Menggunakan Library Arduino
Pada praktikum kali ini akan dibuat program yang berfungsi untuk mengontrol 6 buah lampu
LED. 3 buah lampu LED akan dinyalakan dan 3 buah sisanya akan dimatikan melalui
program. Program yang dibuat akan menggunakan fungsi yang disediakan oleh Arduino
IDE.
Prosedur :
1. Rangkailah rangkaian pada Gambar 2.1.

2. tuliskan sintaks dibawah ini pada program arduino lalu kompilasi dan upload program ke
sistem minimum arduino.

3. Amati kondisi dari keenam LED yang terhubung ke Arduino.


kondisi yang akan terjadi pada LED adalah seperti pada tabel berikut :

dan dibawah adalah hasil simulasi dari praktikum diatas .

2.2 Pemrograman Digital Output Menggunakan Konfigurasi Register


pada praktikum kali ini akan dibuat program yang memiliki fungsi yang sama dengan
praktikum sebelumnya, namun pda kali ini akan menggunakan konfigurasi register untuk
mengakses pin digital.
prosedur :

1. gantilah sintaks pada program arduino dengan sintaks dibawah .

tabel dari hasil praktikum nya seperti dibawah.

perbedaan dari praktikum 2.1 dan 2.2 adalah pada praktikum 2.1 kita menggunakan program
arduino biasa sehingga kita harus membuat satu per satu dari sintaks tersebut , sedangkan
praktikum 2.2 kita menggunakan konfigurasi register .
2.3 penggunaan fungsi Delay
Pada percobaan kali ini akan dipraktekkan penggunaan fungsi delay pada program. Program
yang akan dibuat bertujuan untuk membuat buzzer menyala dan mati secara bergantian
dengan sela waktu tertentu. Konfigurasi nyala dan mati buzzer dengan sela waktu tertentu ini
akan membuat suara seperti alarm ataupun sirine.
prosedur :
1. Rangkailah rangkaian pada Gambar 2.2.

lalu tuliskan sintaks dibawah pada program arduino lalu compile dan upload pada sistem
minimum arduino.

Pin Mode (12, Output) adalah untuk mengkonfigurasi pin 12 sebagai output. Pada void loop ,
fungsi digitalWrite(12, HIGH) adalah mengeset pin 12 sebagai keluaran bernilai HIGH
(menyala pada buzzer) Delay(1000) adalah waktu pada buzzer pada kondisi high selama 1
detik. Fungsi digitalWrite(12, LOW) ; adalah mengeset pin 12 sebagai keluaran bernilain
LOW (Mati) Delay (1000) adalah waktu pada buzzer pada kondisi low selama 1 detik.
2.4 Pemrograman Digital Input Menggunakan Fungsi Arduino
pada percobaan kali ini akan mempraktekkan pemrograman untuk mengakses masukan dalam
bentuk digital. program ini bertujuan untuk menyalakan buzzer ketika tombol ditekan. Untuk
melakukan pengaksesan terhadap masukan digital akan digunakan fungsi Arduino.
prosedur :

1. rangkailah rangkaian dibawah ini

2. tuliskan sintaks dibawah ini pada program arduino lalu compile dan upload pada sistem
minimum arduino.

Fungsi PinMode(A0, INPUT) dalam void setup() untuk mengkonfigurasi AO sebagai


INPUT. digitalWrite(A0, HIGH) untuk mengeset pin AO dalam keadaan High ketika tombol
tidak di tekan , karena AO berfungsi sebagai switch . pinMode(12, OUTPUT) untuk
mengkonfigurasi pin 12 sebagi output pada Void loop (). fungsi
if(digitalRead(A0)==LOW) .maksudnya adalah pada saat switch ditekan makan akan
memenuhi syarat digitalWrite(12,HIGH) pin nomer 12 terpenuhi (bernilai HIGH) buzzer

akan menyala dan apabila pada saat tidak ditekan maka kondisi digitalWite(12, LOW);
buzzer tidak akan berbunyi (pada kondisi LOW).
2.5 Pemrograman Digital Input Menggunakan Konfigurasi Register
Pada percobaan kali ini akan dipraktekkan pemrograman untuk mengakses masukan
dalam bentuk digital sama seperti Percobaan 2.4. Pada percobaan kali ini pengkaksesan
terhadap masukan digital akan menggunakan konfigurasi register.
1. Gantilah sintaks program pada Percobaan 2.5 menjadi seperti di bawah ini, kemudian
lakukan kompilasi dan upload program.

Fungsi dari DDRC=0x00 adalah sebagai inputan data direct register pada port C dari arduino
,0x yaitu pin pada port c dijadikan input , 00 yaitu jika di konversikan ke biner maka didapat
bahwa semua pin A0 A5 pada port c bernilai low . Fungsi dari portc=0x01 adalah jika 01 di
konversikan ke bilangan binner yang dibaca dari kanan maka didapat bahwa pin A0 bernilai
1/high pada port c. Fungsi dari ddrb=0x10 adalah sebagai keluaran data direct register pada
port b dari arduino,0x yaitu pin pada port c dijadikan input,10 yaitu jika di konversikan ke
bilangan biner yang dibaca dari kanan maka A5 adalah bernilai 1/high. Fungsi dari
if(bit_is_clear(pinc,0)) adalah pada saat kondisi dimana Pinc yaitu A0 bernilai 0 ,maka pada
portb yaitu 10 yang diubah ke biner di hitung dari kanan yaitu 10000 dan pin 12 bernilai
1/menyala apabila switch ditekan maka buzzer akan berbunyi. Fungsi else(portb=0x00)
adalah pada saat kondisi selain kondisi pertama saat switch tidak ditekan maka buzzer mati
karena A0 bernilai high.

Tutorial Simulasi Arduino dengan Menggunakan PROTEUS 7


September 18, 2013
mechatronicsdepartment Uncategorized Tinggalkan komentar

oke , kali ini saya akan memposting lanjutan dari postingan sebelumnya yaitu Simulasi
Arduino dengan menggunakan PROTEUS 7 , oke inilah langkah-langkahnya :
1. buka software arduino dan buat salah satu contoh program dasarnya.

2. lalu ikuti langkah ini : File >> preferences >> lalu centang compilation dan upload , itu
berfungsi untuk meng-upload dan mengkompilsai program tersebut ke ISIS (simulator).

3. setelah itu buka software ISIS profesiaonal untuk membuat simulatornya.

4. cari component mode, berfungsi sebagai untuk mencari komponen yang kita butuhkan.
Setelah itu cari huruf P dan cari komponen yang diperlukan , bila telah didapat klik OK.

5. Terminal mode adalah untuk mencari komponen seperti power dan ground.

6. setelah itu buat rangkaian yang diinginkan , dibawah adalah contoh gambar rangkaian yang
akan saya simulasikan.

7. cara untuk meng-compile antara Arduino dan ISIS adalah : pada software Arduino klik
verify, setelah itu muncul command pada bagian bawah dan cari .HEX dan copy command
tersebut.

8. setelah di copy buka simulator ISIS dan double klik pada komponen ARDUINO tersebut,
lalu paste pada program file , setelah selesai kilik OK.

9. dan proses terakhir SIMULATOR bisa digunakan.

SELAMAT MENCOBA ^^

Cara Meng-Crack PROTEUS 7


September 18, 2013
mechatronicsdepartment Uncategorized Tinggalkan komentar
oke kali ini saya akan memberikan ilmu saya tentang cara meng-crack PROTEUS 7, in
berguna agar software yang kita gunaan tidak akan limid lagi .
berikut langkah-langkah meng-crack PROTEUS 7 :
1. buka Library Proteus untuk meng-copy file didalamnya , contoh : Data >> New Folder >>
LIBRARY PROTEUS >> ARDUINO

2. setelah itu copy file .IDX dan .ILB tersebut dan pindahkan ke library , contoh : data C >>
Program Files >> Labcenter Electronics >> Proteus 7 Professional >> Library.

3. setelah itu cari key licence nya dan setelah itu klik kanan , pilih run as administrator.

4. berikutnya , klik browse lalu cari dimana kita meletakkan licence key nya , setelah itu klik
OK. setelah selesai klik tulisan update , dan selesai.

oke bro saya rasa sekian untuk postingan kali ini , semoga bermanfaat ^^
Pencarian..

Pos-pos Terakhir

TIMER DAN COUNTER

KOMUNIKASI SERIAL

INTERUPSI EKSTERNAL

210

PERIPERAL MASUKAN DAN KELUARAN DIGITAL

Komentar Terakhir
Arsip

Desember 2013

Oktober 2013

September 2013

Kategori

Uncategorized

Meta

Mendaftar

Masuk log

RSS Entri

RSS Komentar

WordPress.com

BRANKAS ILMU
Buat situs web atau blog gratis di WordPress.com. The Notepad Theme.
Ikuti
Follow BRANKAS ILMU

Get every new post delivered to your Inbox.

Buat situs dengan WordPress.com


http://jeckyabdirahman.wordpress.com/