Anda di halaman 1dari 14

1

BELAJAR ARDUINO

1 BELAJAR ARDUINO
1 BELAJAR ARDUINO
1 BELAJAR ARDUINO Arduino UNO Arduino tipe uno berbasis ATmega328, menyempurnakan tipe sebelumnya, Duemilanove. Uno
1 BELAJAR ARDUINO Arduino UNO Arduino tipe uno berbasis ATmega328, menyempurnakan tipe sebelumnya, Duemilanove. Uno

Arduino UNO

Arduino tipe uno berbasis ATmega328, menyempurnakan tipe sebelumnya, Duemilanove. Uno sendiri diambil dari bahasa Italia yang artinya satu (1).

Arduino diprogram dengan bahasa khusus, dengan struktur bahasa sama dengan bahasa C. Dengan bahasa tersebut maka pemrograman menjadi lebih mudah, nah inilah kelebihan Arduino.

Spesifikasi hardware Arduino Uno :

Microcontroller

: ATmega328

Tegangan operasi

: 5 V

Tegangan Input

: 7 12V

Digital I/O

: 14 pin

PWM

: 6 channel

Analog Input

: 6 channel

Memory

: 32KB Flash PEROM (0,5 KB digunakan oleh bootloader), 2KB SRAM dan

1KB EEPROM

Frekuensi Clock

: 16 MHz

Koneksi Pin Input Output USB ke (0 1 dst) kompute ATmega3 Jack P. Supply Analog
Koneksi
Pin Input
Output
USB ke
(0
1 dst)
kompute
ATmega3
Jack P.
Supply
Analog Input
Pin A0, A1

Gambar Board Arduino UNO

Gambarnyaboard Arduino sudah anda lihat, nah sekarang kita pelajari boardnya.

Power Supply.

Banyak pilihan sumber tegangan yang dapat dipakai, dari port USB maupun dari power supply eksternal dan lebih gampangnya lagi adalah sumber tegangan tersebut dipilih secara otomatis. Cukup menghubungkan port USB di komputer/laptop dengan Arduino maka secara otomatis power supply

www.tokotronik.com

2

BELAJAR ARDUINO

bersumber dari port USB. Untuk sumber tegangan eksteranal (non-USB) kita cukup menghubungkan dengan jack dc. Tegangan yang direkomendasikan adalah 7 sampai 12 V.

Input Output.

Dalam hal penamaan, port Arduino berbeda dengan minimum system atau development system mikrokontroler. Sebagai contoh pada minimum system ATmega8535 penamaan port adalah PORTA, PORTB, PORTC dan PORTD, untuk akses per-bit maka PORTA.0 s/d PORTA.7. Sistem penamaan port pada Arduino merupakan urutan nomor port, mulai dari nomor nol (0), satu (1) dan seterusnya. Untuk digital I/O (Input/Output) dengan nama pin 1, 2 sampai 13, sedangkan untuk analog input menggunakan nama A0, A1 sampai A5.

Pada Arduino uno terdapat 14 pin digital input output. Secara umum berfungsi sebagai port input output biasa, namun ada beberapa pin yang mempunyai fungsi alternatif.

No Pin

Fungsi

Fungsi alternatif

 

0 Digital I/O 0

RX (serial receiver)

 

1 Digital I/O 1

TX (serial transmiter)

 

2 Digital I/O 2

Interupsi external

 

3 Digital I/O 3

Interupsi external & PWM

 

4 Digital I/O 4

-

 

5 Digital I/O 5

PWM

 

6 Digital I/O 6

PWM

 

7 Digital I/O 7

-

 

8 Digital I/O 8

-

 

9 Digital I/O 9

PWM

 

10 Digital I/O 10

SPI SS & PWM

 

11 Digital I/O 11

SPI MOSI & PWM

 

12 Digital I/O 12

SPI MISO

 

13 Digital I/O 13

SPI SCK & LED

Analog Input.

Arduino memiliki 6 pin analog input, berfungsi membaca sinyal masukan analog seperti sensor analog.

No pin

Fungsi

Fungsi Alternatif

A0

Analog Input 1

-

A1

Analog Input 2

-

A2

Analog Input 3

-

A3

Analog Input 4

-

A4

Analog Input 5

TWI SDA

A5

Analog Input 6

TWI SCL

5 TWI – SDA A5 Analog Input 6 TWI – SCL Meskipun demikian pin analog input

Meskipun demikian pin analog input dapat pula kita gunakan untuk keperluan digital I/O.

Sudah tidak sabar untuk langsung mencoba Arduino ? Sabar sebentar, kita lihat bagaimana aturan main dalam pemrogramannya.

Nah, setelah kita pelajari struktur hardwarenya, sekarang kita lanjutkan pada pemrograman Arduino UNO. Tidak serumit bahasa pemrograman C untuk ATmega seperti Codevison-AVR (walaupun CodeVision AVR juga lebih mudah dibandingkan bahasa assembly), pemrograman Arduino menjadi lebih mudah. Struktur pemrogramannya memang bahasa C, bagi anda yang sudah menguasai bahasa C/C++

www.tokotronik.com

3

BELAJAR ARDUINO

maka akan menjadi lebih gampang memprogram Arduino. Bagi yang belum pernah apalagi menguasai jangan khawatir, karena nanti akan kita buktikan bahwa ternyata memang sangat mudah.

Mekanisme permogramannya sama dengan memprogram mikrokontroler, mulai dari menulis program kemudian mengeksekusi (compile) selanjutnya proses upload yaitu mengisikan program kedalam memori program Arduino.

Tulis kode program
Tulis kode
program
Verify Upload (Compile)
Verify
Upload
(Compile)

Struktur dasar

Sebuah program Arduino minimal terdiri dari 2 bagian :

Inisialisasi.

Inisialisasi merupakan proses mengatur hardware seperti port I/O, PWM, serial dan peripheral lain. Struktur ini ditulis diawal program. Sebagai contoh port I/O mempunyai beberapa fungsi : digital input, digital output, serial komunikasi dan PWM. Sebuah port hanya dapat berfungsi untuk 1 tujuan, jadi jika kita hendak menggunakan port tersebut sebagai digital output maka harus diinisialisasi terlebih dahulu sebagai port output. Inisialisasi menggunakan struktur setup(). Sebagai contoh :

void setup()

{

Serial.begin(9600);

pinMode(buttonPin, INPUT);

}

Program utama.

Setelah melakukan inisialisasi selanjutnya program yang dikerjakan adalah program utama, tergantung dari aplikasi yang dibuat, isi dari program utama berbeda antara satu program dengan program yang lain. Struktur yang digunakan adalah loop(). Sebagai contoh :

void loop()

{

}

Harap diperhatikan bahwa bahasa pemrograman Arduino (sebagaimana bahasa C) termasuk case sensitive, artinya huruf besar dengan huruf kecil akan dianggap berbeda.

Komentar digunakan untuk memberi keterangan pada program yang dibuat, sifatnya tidak wajib dan tidak akan berpengaruh pada jalannya program karena tidak ikut dieksekusi. Komentar dapat dibuat untuk 1 baris maupun lebih dari 1 baris, berikut ini caranya :

//komentar untuk 1 baris diawali dengan 2 garis miring.

/*komentar untuk lebih dari 1 baris diawali dengan tanda garis miring + asterisk atau bintang (/*)

Serta diakhiri dengan tanda asterisk + garis miring */

www.tokotronik.com

4

BELAJAR ARDUINO

Ekspresi Bilangan

Dalam pemrograman Arduino, bilangan dapat diekspresikan dalam beberapa format.

Desimal Ditulis biasa tanpa tambahan apapun. Contoh : 234.

Oktal Ditulis dengan awalan angka ‘0’ (nol) didepan. Contoh : 0631.

Biner Penulisan diawali dengan huruf ‘B’. Contoh : B11100011.

Heksadesimal Diawali dengan ‘0x’ . Contoh : 0x8C.

Kontrol Program

Sebuah program yang kita buat membutuhkan suatu kontrol, misalnya pengujian kondisi, melompat pada perintah yang lain dan sebagainya.

Pengujian Kondisi.

if

Digunakan untuk menguji kondisi, jika kondisi tersebut benar maka perintah didalam If akan dikerjakan.

if (kondisi)

{

Pernyataan/perintah;

}

Contoh :

if(x>7)

{

x=x+1;

}

if else

Hampir sama dengan if, hanya saja ada 2 pilihan pernyataan/perintah. Jika kondisi benar maka perintah didalam blok if yang dikerjakan, jika kondisi salah maka pernyataan di dalam else yang dikerjakan.

if (kondisi)

{

Pernyataan/perintah 1:

}

else

{

Pernyataan/perintah 2;

}

www.tokotronik.com

5

BELAJAR ARDUINO

Contoh :

if (x>7)

{

x=x+1;

}

else

{

x=x+2;

}

if else if

Untuk pengujian dengan banyak kondisi maka digunakan if else if.

if (kondisi 1)

{

Pernyataan/perintah 1;

}

else if (kondisi 2)

{

Pernyataan/perintah 2;

}

else if (kondisi ke-n)

{

Pernyataan/perintah ke-n;

}

Contoh :

if(tombol=='1'){

Serial.println("Angka 1");

}

else if(tombol =='2'){ Serial.println("Angka 2");

}

else if(tombol =='3'){

Serial.println("Angka 3");

}

www.tokotronik.com

6

BELAJAR ARDUINO

Operator Aritmatika.

Operator

Keterangan

=

Pemberian nilai

+

Operasi penjumlahan

-

Operasi pengurangan

*

Operasi perkalian

/

Operasi pembagian

%

Operasi sisa pembagian

Operator Perbandingan.

Operator

Keterangan

==

Operator persamaan. Jika kedua nilai yang dibandingkan sama hasilnya ‘true’.

!=

Pertidaksamaan. Jika kedua nilai yang dibandingkan tidak sama hasilnya ‘true’

>

Lebih besar.

<

Lebih kecil.

>=

Lebih besar atau sama dengan.

<=

Lebih kecil atau sama dengan.

PIN INPUT OUTPUT

Pada board Arduino UNO terdapat 13 pin I/O, dari namanya kita tahu bahwa fungsinya dapat sebagai pin input (masukan) maupun pin output (keluaran).

Inisialisasi Fungsi Pin I/O

Sebuah pin pada saat yang sama hanya mempunyai satu fungsi, sebagai input saja atau output saja, untuk itu harus ditentukan dulu fungsinya, yaitu ketika inisialisasi (setup()), dengan cara :

pinMode(pin, mode);

pin : nomor pin yang akan dikonfigurasi (nomor pin pada board Arduino UNO, 0 13 atau A0

A5).

mode : INPUT atau OUTPUT.

Sebagai contoh jika pin no 2 akan dibuat sebagai pin output, maka :

pinMode(2, OUTPUT);

Contoh yang lain pin no 4 dibuat sebagai input :

pinMode(4, INPUT);

Perhatikan penulisan huruf, besar kecilnya sangat berpengaruh.

Menulis Data Digital di Pin Output

Setelah membuat pin sebagai digital output dengan fungsi pinMode(pin,OUTPUT) selanjutnya untuk menulis atau mengeluarkan data digital dengan perintah :

digitalWrite(pin, value);

pin : nomor pin digital output.

www.tokotronik.com

7 BELAJAR ARDUINO

value : HIGH atau 1 (5 volt) atau LOW atau 0 (0 volt/ground).

Sebagai contoh, pin 3 sebagai pin digital output akan diberi logika 1 :

pinMode(3, OUTPUT);

digitalWrite(3, HIGH); Atau dapat juga ditulis dengan cara lain, yaitu :

digitalWrite(3, 1);

Membaca Data Digital di Pin Input

Jika sebuah pin dibuat sebagai pin input, maka kita masih harus menentukan tipe inputnya : floating atau pullup. Jika kita pilih pullup maka resistor pullup internal (pada setiap pin) akan aktif. Caranya adalah :

digitalWrite(pin, value);

pin : nomor pin yang diset sebagai pin input.

value : HIGH atau 1 (pullup aktif) atau LOW atau 0 (floating).

Contoh pin no 4 akan dibuat sebagai pin input dengan pullup :

pinMode(4,INPUT);

digitalWrite(4,HIGH);

Setelah diset sebagai pin input, fungsi pembacaan data digitalnya adalah :

Var=digitalRead(pin);

baca=digitalRead(4);
baca=digitalRead(4);

Misalnya akan dibaca pin no 4, hasil pembacaan disimpan dalan variabel baca :

Hubungkan kabel USB ke konektor USB Arduino, kemudian ujung yang satunya ke port USB komputer/laptop. Lampu LED pada Arduino akan nyala. Kalau belum nyala juga periksa koneksi kabel USB nya.

Sesaat setelah dicolokkan ke komputer maka pada layar akan tampil informasi bahwa telah terdeteksi hardware baru seperti pada gambar.

bahwa telah terdeteksi hardware baru seperti pada gambar. Kemudian muncul dialog seperti gambar berikut.

Kemudian muncul dialog seperti gambar berikut.

www.tokotronik.com

8

BELAJAR ARDUINO

8 BELAJAR ARDUINO Pilih Install form a list or specific location (Advanced) , kemudian klik Next

Pilih Install form a list or specific location (Advanced), kemudian klik Next >.

specific location (Advanced) , kemudian klik Next > . Klik Browse untuk menentukan lokasi driver, sesuaikan

Klik Browse untuk menentukan lokasi driver, sesuaikan dengan lokasi dimana anda menyimpannya. Cari di CD:\Arduino-1.0.1\drivers. Kemudian klik Next>, maka akan muncul dialog seperti pada gambar.

Next> , maka akan muncul dialog seperti pada gambar. Pilih Continue Anyway . Proses instalasi akan

Pilih Continue Anyway. Proses instalasi akan berjalan, tunggu sampai selesai.

www.tokotronik.com

9

BELAJAR ARDUINO

9 BELAJAR ARDUINO Apabila telah selesai akan muncul kotak dialog seperti pada gambar. Klik Finish dan

Apabila telah selesai akan muncul kotak dialog seperti pada gambar.

telah selesai akan muncul kotak dialog seperti pada gambar. Klik Finish dan board Arduino siap digunakan.

Klik Finish dan board Arduino siap digunakan.

pada gambar. Klik Finish dan board Arduino siap digunakan. Software yang digunakan untuk membuat program berbasis

Software yang digunakan untuk membuat program berbasis board Arduino sifatnya free, dan instalasinya juga sangat gampang. Masih menggunakan OS Windows, silahkan explore folder Arduino- 1.0.1 (untuk versi terbaru bisa download di http://arduino.cc/en/Main/Software). Klik 2 kali (klik kanan terus open) file Arduino.exe.

Klik 2 kali
Klik 2 kali
kali (klik kanan terus open) file Arduino.exe. Klik 2 kali Untuk penggunaannya kita akan sering memakai

Untuk penggunaannya kita akan sering memakai toolbar, keterangan tombol toolbar terlihat pada gambar berikut.

www.tokotronik.com

10

BELAJAR ARDUINO

Upload Open Verify New Save
Upload
Open
Verify
New
Save

Gambar tersebut adalah tampilan software Arduino yang nantinya akan kita pakai untuk membuat program dan mengisikannya (upload) ke memori Arduino. Sekarang kita pelajari sebentar fungsi tombol pada toolbar.

Verify. Berfungsi untuk mengeksekusi (proses compile) program.

New. Membuat lembar kerja baru.

Open. Membuka file yang pernah dibuat & disimpan.

Save. Menyimpan program, secara otomatis akan berekstensi *.pde.

Upload. Berfungsi untuk mentransfer program yang telah dieksekusi ke dalam memori Arduino, dalam beberapa software disebut dengan istilah program, ada juga yang menyebut dengan istilah download.

Setelah kita pahami si Arduino ini, baik secara hardware maupun software sekarang saatnya kita mencoba ilmunya. Kita mulai dari yang paling dasar & sederhana, digital output.

DIGITAL OUTPUT DULU yaa

Aplikasi digital output memanfaatkan pin I/O yang difungsikan sebagai pin output. Pada board Arduino terdapat sebuah LED berwarna kuning (built-in, LED SMD jadi agak kecil bentuknya), yang terhubung ke pin 13

LED
LED
SMD jadi agak kecil bentuknya), yang terhubung ke pin 13 LED Perhatikan rangkaian LED-nya, jika pada

Perhatikan rangkaian LED-nya, jika pada pin 13 terdapat tegangan 5 volt (HIGH) maka terdapat perbedaan tegangan antara kaki anoda (5 volt) dengan kaki katoda (0 volt, ground) sehingga akan mengalir arus dan LED nyala (ON). Tegangan 0 volt (LOW) akan membuat LED padam (off).

www.tokotronik.com

11

BELAJAR ARDUINO

Baik, sekarang buka program Arduino.exe, kemudian tulis program 1. Silahkan sesuaikan setingan software Arduino dengan board Arduino anda, dalam hal ini kita memakai Arduino UNO. Klik Tools Board Arduino Uno.

Arduino UNO. Klik Tools  Board  Arduino Uno . Sesuaikan juga nomor port serial (USB

Sesuaikan juga nomor port serial (USB to Serial).

Uno . Sesuaikan juga nomor port serial (USB to Serial). Jika anda belum tahu nomornya dapat

Jika anda belum tahu nomornya dapat dilihat dengan cara : klik kanan My Computer, kemudian pilih Properties. Pada tab Hardware pilih Device Manager. Lihat pada kelompok Ports (COM & LPT).

Baik, sekarang tulis/ketik program yang pertama.

//Program 1 : menghidupkan LED di pin 13 board Arduino void setup() {

pinMode(13, OUTPUT);

}

void loop() {

digitalWrite(13, HIGH);

}

www.tokotronik.com

12

BELAJAR ARDUINO

3. 2. 1.
3.
2.
1.

Setelah selesai, simpan (Save) dan beri nama, misalnya ‘program1’ (tanpa tanda petik).

Secara otomatis terbentuk folder dengan nama ‘program1’.Didalamya terdapat file dengan nama ‘program1.pde’. Compile atau klik toolbar Verify.

‘program1.pde’. Compile atau klik toolbar Verify . Tunggu sampai proses compiling selesai. Jika ada error

Tunggu sampai proses compiling selesai.

toolbar Verify . Tunggu sampai proses compiling selesai. Jika ada error silahkan perbaiki dulu, perhatikan

Jika ada error silahkan perbaiki dulu, perhatikan penulisannya, karena pemrograman juga tentang ketelitian. Selanjutnya upload program ke board Arduino, klik Upload.

karena pemrograman juga tentang ketelitian. Selanjutnya upload program ke board Arduino, klik Upload . www.tokotronik.com

www.tokotronik.com

13

BELAJAR ARDUINO

Tunggu sampai proses upload selesai.

13 BELAJAR ARDUINO Tunggu sampai proses upload selesai. Jalannya program : Lihat hasilnya pada led kuning.

Jalannya program :

Lihat hasilnya pada led kuning. LED warna kuning (L) akan nyala.

LED Kuning nyala
LED Kuning
nyala

Penjelasan program :

Pada baris atas ada sebuah komentar (diawali dg //) :

//Program 1 : menghidupkan LED di pin 13 board Arduino

Komentar sifatnya sebagai penjelas saja. Tidak wajib. Tidak berpengaruh terhadap jalannya program.

Program dimulai dengan inisialisasi : void setup(), hanya ada satu perintah dalam inisialisasi ini. pinMode(13, OUTPUT); pin no 13 difungsikan sebagai pin output.

Selanjutnya program utama : void loop() juga hanya ada satu perintah yaitu :

digitalWrite(13, HIGH); pin no 13 ditulis HIGH, artinya pin 13 mengeluarkan logika HIGH/”1” (5 volt), maka kita lihat LED akan nyala (ON).

//Program 1 : menghidupkan LED di pin 13 board Arduino Komentar void setup() { pinMode(13,
//Program 1 : menghidupkan LED di pin 13 board Arduino
Komentar
void setup() {
pinMode(13, OUTPUT);
Fungsi :
}
No pin :
void loop() {
Pin 13 mengeluarkan
logika HIGH
digitalWrite(13, HIGH);
}

Sebenarnya ada cara lain untuk membuat logika pin menjadi ‘HIGH’ atau ‘LOW’. Dengan cara langsung ditulis nilai ‘1’ untuk ‘HIGH’ dan ‘0’ untuk ‘LOW. Langsung contoh aja ya, pada program 1 :

www.tokotronik.com

14

BELAJAR ARDUINO

//Program 1 : menghidupkan LED di pin 13 board Arduino

void setup() {

pinMode(13, OUTPUT);

}

void loop() {

Pin 13 mengeluarkan logika ‘1’ (HIGH)
Pin 13 mengeluarkan logika ‘1’
(HIGH)

digitalWrite(13, 1);

}

UNTUK MEMPELAJARI DASAR-DASAR ARDUINO DENGAN JELAS, MUDAH & LANGSUNG DIPRAKTEKKAN ANDA BISA MEMBELI PAKET MASTER MIKRO ARDUINO VER.2.

www.tokotronik.com