PRAKTIKUM MIKROPROSESOR
MODUL I
PENGENALAN MIKROKONTROLER AVR ATMega 8535
LAPORAN AWAL
NAMA : Mukh Yasin Nur Supriyadi
NPM : 140303130001
WAKTU :
ASSISTEN :
LABORATORIUM HARDWARE
PROGRAM STUDI TEKNIK KOMPUTER
FMIPA UNPAD
2014
MODUL 1
Pengenalan Mikrokontroller AVR ATMega 8535
I. Tujuan Praktikum
Praktikan mampu memahami fungsi pin I/O pada mikrokontroler AVR sebagai input dan
output.
Praktikan mampu memahami I/O sebagai output untuk mengendalikan LED.
Praktikan mampu memahami pin I/O sebagai input untuk membaca penekanan switch.
II. Teori Dasar
2.1 Pengenalan Mikrokontroler
Suatu mikrokontroller digunakan untuk mengontrol suatu proses atau aspek-aspek dari
lingkungan. Satu contoh aplikasi dari mikrokontroler adalah untuk mengatur rumah kita. Ketika suhu
naik, kontroller membuka jendela dan sebaliknya. Pada masanya, kontroler dibangun dari komponen-
komponen logika secara keseluruhan, sehingga menjadikanya besar dan berat. Setelah itu barulah
dipergunakan mikroprosesor sehingga keseluruhan kontroler masuk kedalam PCB yang cukup kecil.
Mikrokontroler AVR merupakan mikrokontroller berbasis arsitektur RISC (Reduced Instruction
Set Computing) 8 bit. Mikrokontroller AVR didesain menggunakan arsitektur Harvard, dimana ruang
dan jalur bus bagi memory program dipisahkan dengan memori data. Memori program diakses dengan
single-pipelening, dimana ketika sebuah instruksi dijalankan, instruksi lain berikutnya akan di prefetch
dari program memori. AVR mempunyai kepanjangan Advance Versatilc RISC atau Alf and Vegard’s
RISC prosesor yang berasal dari dua nama mahasiswa yaitu Alf-Egil Bogel dan Vergerd Wollan.
AVR memiliki keunggulan dibandingkan mikrokontroller lain, keunggulan mikrokontroller AVR
yaitu AVR memiliki kecepatan eksekusi program yang lebih cepat karena sebagian instruksi
dieksekusi dalam satu siklus clock, lebih cepat dibandingkan dengan mikrokontroller MSC51,
Mikrokontroller AVR memiliki fasilitas yang lengkap (ADC internal, EEPROM internal,
timer/counter, watchdog timer, PWM, port I/O, komunikasi serial, komparartor 12C, dan lain-lain.
Sehingga dengan fasilitas yang lengkap ini, programmer dan designer dapat menggunakanya untuk
berbagai aplikasi sistem elektronika seperti robot, otomasi industri, peralatan telekomunikasi, dan
berbagai keperluan lain. Secara umum mikrokontroller ACR dapat dikelompokan menjadi 3
kelompok, yaitu keluarga AT90Sxx, ATMega, dan Atiny.
Tabel Jenis Mikrokontroller AVR
Mikrokontroller AVR Memori
Tipe Jumlah pin Flash EEPROM SRAM
Tiny AVR 8 – 32 1 – 2k 64 – 128 0 – 128
AT90Sxx 20 – 44 1 – 8k 128 – 512 0 – 1k
ATMega 32 – 64 8 – 128k 512 – 4k 512 – 4k
Fitur-fitur pada ATMega 8535
Fitur yang dimiliki ATMega 8535 sebagai berikut:
• Saluran IO sebangak 32 buah
• ADC 10 bit sebanyak 8 channel
• Tiga buah timer / counter
• Memiliki 32 register
• Watcthdog Timer dengan osicilator internal
• SRAM sebanyak 512 byte, EEPROM 512 byte, memori flash sebesar 8kb
• Sumber Interrupt internal dan external
• Mempunyai port SPI (Serial Peripheral Interface) dan port USART (Universal
Shyncronous Ashyncronous Receiver Transmitter).
Konfigurasi pin AVR ATMega 8535
PDIP
Konfigurasi kaki (pin) ATMega 8535
Konfigurasi pin ATMega 8535 dengan kemasan 40 pin DIP (Dual In-Line package) dapat
dilihat pada gambar diatas. Dari gambar diatas dapat dijelaskan fungsi dari masing-masing pin
ATMega 8535 sebagai berikut:
1. VCC merupakan pin yang berfungsi sebagai masukan catu daya.
2. GND merupakan pin Ground
3. Port A (PA0...PA7) merupakan pin I/O dan pin ADC
4. Port B (PB0....PB7) merupakan pin I/O dan pin yang mempunyai fungsi khusus yaitu timer/counter,
komparator Analog dan SPI.
5. Port C (PC0....PC7) merupakan port I/O dan pin yang mempunyai fungsi khusus yaitu komparator
analog dan timer Oscillator.
6. Port D (PD0....PD7) merupakan port I/O dan pin fungsi khusus yaitu komparator analog dan
interupt eksternal serta komunikasi serial.
7. RESET merupakan pin yang digunakan untuk mereset mikrokontroller.
8. XTAL 1 dan XTAL 2 merupakan pin masukan clock eksternal.
9. AVCC merupakan pin masukan tegangan untuk ADC.
10. AREF merupakan pin masukan tegangan referensi untuk ADC.
2.2. Pemrograman mikrokontroller AVR ATMega 8535
Pengembangan sebuah sistem menggunakan mikrokontroller AVR buatan ATMEL
menggunakan software AVR STUDIO dan Code Vision AVR. AVR STUDIO merupakan software
khusus untuk bahasa assembly. Sedangkan Code Vision AVR merupakan software C-Corss Compiler,
dimana program dapat ditulis dalam bahasa C, Code Vision memiliki IDE (Integrated Development
Environment) yang lengkap, dimana penulisan program, compile, link, pembuatan code mesin
(assembler) dan download program ke chip AVR dapat dilakukan pada code vision, selain itu ada
fasilitas itu ada fasilitas terminal, yaitu untuk melakukan komunikasi serial dengan mikrokontroller
yang sudah diprogram. Proses download program IC mikrokontroller AVR dapat menggunakan sistem
download secara ISP (In-System Programing). In-System Programmable flash on-chip mengijinkan
memori program untuk diprogram ulang dalam sistem menggunakan hubungan serial SPI.
#include <mega8535.h>
#include <delay.h>
#define sensor PINA.0
#define servo PORTB.0
// variabel global
Unsigned int i,j;
Void main (void)
{
// variabel local
Char data_rx;
DDRA=0x00;
PORTA=0XFF;
DDRA=0XFF;
PORTB=0x00;
While (1)
{
.........
.........
.........
};
}
Penjelasan :
Prosessor(#): digunakan untuk memasukan (include) text dari file lain, mendefinisikan marco
yang dapat mengurangi beban kerja pemograman dan meningkatkan legibility source code (mudah
dibaca).
#define: digunakan untuk mendefinisikan macro
Contoh:
#define ALFA 0xff
#define SUM (a,b) a+b
#define Sensor PINA.2
#define Pompa PORTB.0
• Komentar
Penulisan komentar untuk beberapa baris komentar sekaligus
/*
..........komentar
..../*
Penulisan untuk satu baris saja
//.........komentar.........
Input Output Mikrokontroller AVR ATMega 8535
Mikrokontroller AVR ATMega 8535 terdiri dari empat buah port yaitu port A (PA), portB
(PB), portC (PC) dan portD (PD) yang semuanya dapat diprogram sebagai input ataupun output. Pin
I/O pada mikrokontroller VR dapat konfigurasi sebagai input atau output, dengan cara mengubah isi
I/O register Data Direction Register.
Misalnya, jika ingin port B dikonfigurasikan sebagai output, maka Data Direction Register
portB (DDRB) harus diset sebagai 0xFFH (sama dengan 255). Jika sebagai input maka 0x00H (sama
dengan 0).
Contoh :
DDRB = 255; //portB dikonfigurasikan sebagai output. Yaitu PB0-
PB7.
DDRD = 0x00; //portD dikonfigurasikan sebagai input.
VOH (Output High Voltage) ialah tegangan pada pin I/O mikrokontroller ketika ia
mengeluarkan logika “1” dengan besar sekitar 4.2 V dan arus sebesar 20mA (IOH). Setiap pin I/O
mikrokontroller AVR memiliki internal pull up. Misalnya portB dikonfigurasikan sebagai input dan
internal pull-upnya diaktifkan maka DDRB = 00H dan PORTB = 00H.
DDRB = 0; //portB dikonfigurasikan sebagai input.
PORTB.0 = 0; //internal pull-up
Untuk mendeteksi input pada salah satu port, dapat digunakan fungsi PINx, sedangkan
mendeteksi per pin pada suatu port dapat digunakan funsi pin x bit.
Contoh:
PORTB = PINC //semua data di portC dikirim ke portB
PORTB.0 = PINC.0; //data di portC.0 dikirim ke portB.0
Tegangan keluaran pada pin I/O mikrokontroller ketika logika “1” besarnya sekitar 4.2 V dan
arusnya 20 mA. Port I/O sebagai output hanya memberikan arus (sourcing) sebesa 20 Ma, keluaran
dari suatu port mikrokontroller hanya dapat mengemudikan perangkat output dengan arus kecil,
sehingga untuk peralatan elektronik yang membutuhkan arus yang besar misalnya untuk
menggerakkan motor perlu diberikan penguat tambahan, oleh karena itu biasanya dipergunakan
penguat lagi berupa transistor atau IC penguat (driver) agar port tersebut tidak terbebani, atau dapat
juga dengan konfigurasi port sebagai sinking current, seperti pada port untuk menyalakan LED, yang
akan menyala saat port diberikan nilai logika low dan mati saat port diberikan nilai logika high.
Program Control
• Perintah if dan if.. else..
Perintah if dan if... else... digunakan untuk melakukan operasi percabangan bersyarat. Fungsi-
fungsi untuk menetapkan kondisi dapat dilihat dalam tabel.
Syntax penulisan if dapat ditulis sebagai berikut:
If (<expression>)
<statement>;
Else
<statement>;
Jika hasil testing expression memberikan hasil tidak nol statement 1 akan dilaksanakan. Pada
keadaan sebaliknya statement 2 yang akan dilaksanakan. Sebaliknya pemanfaatan perintah if untuk
beberapa kondisi dilakukan dengan menggunakan blok-blok.
• Percabangan Switch
Perintah percabangan if .... else ..... dapat digantikan dengan perintah swicth. Dalam
pernyataan switch, sebuah variabel secara berurutan diuji oleh beberapa konstanta bilangan bulat atau
konstanta karakter, syntax perintah switch dapat dituliskan sebagai berikut:
Switch (variabel){Case konstanta_1 : statement; Break;Case konstanta_2: statement; Break;Case konstanta_3: statement; Break;Default:}
Hal-hal yang harus diperhatikan :
1. Switch hanya dapat memeriksa variabel terhadap sebuah konstanta, sedangkan if dapat
memeriksa persyaratan perbandingan (lebih besar, lebih kecil, dan seterusnya).
2. Tidak ada 2 konstanta yang sama didalam sebuah switch.
3. Perintah switch jika dimanfaatkan dengan tepat dapat memberikan hasil lebih baik daripada
perintah if .... else .... yang membentuk tangga dan / bersarang.
• Looping (perulangan)
Looping adalah perulangan satu atau beberapa perintah sampai mencapai keadaan tertentu. Ada
tiga perintah looping, yaitu : for .... while.... , dan do.... while....
Syntax loop dor dapat dituliskan sebagai berikut:
• For
Untuk perulangan yang melakukan proses increment
For (nama_variabel = nilai_awal; syarat_loop;
Nama_variabel++)
{
Statement_yang_diulang;
}
Untuk perulangan yang melakukan proses decrement
For (nama_variabel = nilai_awal; syarat_loop;
Nama_variabel --)
{
Statement_yang_diulang;
}
Syarat loop adalah pernyataan relasional yang menyatakan syarat berhentinya perulangan,
biasanya berkaitan dengan variabel control, nama_variabel++ dan nama_variabel --, menyatakan
proses increment dan proses descrement pada variabel control.
• While
Perintah while dapat melakukan looping apabila persyaratannya benar, syntax perintah while
dapat dituliskan sebagai berikut:
Nama_variabel = nilai_awal;
While (syarat_loop)
{
Statement_yang_akan_diulang;
Nama_variabel++;
}
• Do... while
Perintah while terlebih dahulu melakukan pengujian persyaratan sebelum melakukan looping.
Kadang-kadang hal ini menimbulkan kerepotan-kerepotan yang tidak perlu, misalnya
inisialisasi variabel control. Salah satu solusi adalah dengan menggunakan loop do... while:
Nama_variabel = nilai_awal;
Do
{
Statement_yang_akan_diulang;
Nama_variabel++;
}
While (syarat_loop)
III. Tugas Pendahuluan
1. Jelaskan perbedaan Mikrokontroler dan Mikroprosesor!
Jawab :
i. Mikroprosesor
a. Bersifat general purpose (berfungsi umum).
b. Mikroprosesor hanya berisikan sepaket chip yang hanya berfungsi sebagai
pengolah data (terdiri dari ALU, PC, SP, register, clock, interrupt, data/address bus)
dari memory.
c. Mikroprosesor tidak memiliki fitur lainya sehingga untuk dapat beroperasi
harus ditambahkan lagi RAM, I/O dan berbagai peripheral atau device lain tergantung
penggunaannya. Contoh nya seperti processor INTEL atau AMD pada PC.
ii. Mikrokontroler
a. Bersifat specific purpose (berfungsi khusus).
b. Mikrokontroler berisikan sepaket chip lengkap yang terdiri dari fitur-fitur
pengolah data yang juga terdapat dalam mikroprosesor, ditambah RAM,
ROM, I/O, dan fitur lain yang terintegrasi di dalamnya. Contohnya dapat
ditemui pada perangkat otomotif, mesin industri, elektronik dan perangkat-
perangkat lain yang memiliki embedded sistem di dalamnya.
2. Apa bedanya mikrokontroller ATMega 8535, ATMega 8535L, dan ATMega 16 ?
Jawab :
i. ATMega 8535
a. Tegangan catu operasinya 4.5V S/d 5.5V,
b. Tingkat kecepatan mikrokontrollernya 0 – 16 Mhz.
c. Range kemampuan tegangan kerja dan kecepatan clock lebih besar/tinggi
daripada ATMega 8535L
ii. ATMega 8535L
a. Tegangan catu operasinya 2.7V s/d 5.5V,
b. Tingkat kecepatan mikrokontrollernya 0 – 8 Mhz.
c. Range kemampuan tegangan kerja dan kecepatan clock lebih kecil/rendah
daripada ATMega 8535L
iii. ATMega 16
a. Tidak sestabil seri 8535
3. Apa saja keunggulan mikrokontroller ATMega 8535 dibandingkan dengan mikrokontroller
lainya ?
Jawab : Harga mikrokontroler ini tergolong murah saat ini jika dilihat dari fasilitas yang
dimilikinya. ATmega8535 memiliki empat port yang dapat digunakan untuk banyak
masukan atau keluaran, memiliki ADC, Timer dan fasilitas lainya. Keuntungan lain
mikrokontroler ini adalah cara memrogramnya juga mudah karena tidak memerlukan
downloader yang sangat merepotkan seperti mikrokontroler generasi sebelumnya karena
dapat diprogram menggunakan sistem minimalnya.
4. Jelaskan fungsi, tujuan dari CODEVISION AVR ?
Jawab : Code Vision AVR merupakan software C-Corss Compiler, dimana program dapat
ditulis dalam bahasa C, Code Vision memiliki IDE (Integrated Development Environment)
yang lengkap, dimana penulisan program, compile, link, pembuatan code mesin (assembler)
dan download program ke chip AVR dapat dilakukan pada code vision, selain itu ada
fasilitas itu ada fasilitas terminal, yaitu untuk melakukan komunikasi serial dengan
mikrokontroller yang sudah diprogram.
Pada dasarnya CODEVISION AVR merupakan sebuah software yang digunakan untuk
kepentingan pemrograman pada Mikrokontroller.
5. Jelaskan Spesifikasi dari ATMega 8535!
Jawab :
a. Saluran I/O sebanyak 32 buah, yang terdiri atas Port A, B, C dan Db. ADC (Analog to Digital Converter)c. Tiga buah Timer/Counter dengan kemampuan perbandingand. CPU yang terdiri atas 32 registere. Watchdog Timer dengan osilator internalf. SRAM sebesar 512 byteg. Memori Flash sebesar 8kb dengan kemampuan read while writeh. Unit Interupsi Internal dan Externali. Port antarmuka SPI untuk men-download program ke flashj. EEPROM sebesar 512 byte yang dapat diprogram saat operasik. Antarmuka komparator analogl. Port USART untuk komunikasi seria
6. Gambarkan Data Sheet ATMega 8535 beserta fungsi umum dan fungsi khusus dari masing-masing PIN pada port ATMega 8535 ?Jawab:
Datasheet ATMega 8535
Fungsi PIN secara umum dan khusus :
1. VCC merupakan pin yang berfungsi sebagai masukan catu daya.
2. GND merupakan pin Ground
3. Port A (PA0...PA7) merupakan pin I/O dan pin ADC
4. Port B (PB0....PB7) merupakan pin I/O dan pin yang mempunyai fungsi khusus yaitu
timer/counter, komparator Analog dan SPI.
5. Port C (PC0....PC7) merupakan port I/O dan pin yang mempunyai fungsi khusus yaitu
komparator analog dan timer Oscillator.
6. Port D (PD0....PD7) merupakan port I/O dan pin fungsi khusus yaitu komparator analog
dan interupt eksternal serta komunikasi serial.
7. RESET merupakan pin yang digunakan untuk mereset mikrokontroller.
8. XTAL 1 dan XTAL 2 merupakan pin masukan clock eksternal.
9. AVCC merupakan pin masukan tegangan untuk ADC.
10. AREF merupakan pin masukan tegangan referensi untuk ADC.
7. Apa yang dimaksud dengan arduino ?
Jawab : Arduino adalah pengendali mikro single-board yang bersifat open-source, yang di
turunkan dari wiring platform, yang di rancang untuk memudahkan penggunaan elektronik
dalam berbagai bidang. Hardwarenya memiliki prosesor atmel AVR dan softwarenya
memiliki bahasa pemrograman sendiri.
8. Sebutkan dan jelaskan jenis-jenis arduino!
Jawab:
a. Arduino USB.
Papan Arduino jenis ini menggunakan port USB sebagai antar muka pemrograman
atau komunikasi komputer. Karena menggunakan port USB sebagai antar mukanya, jenis
papan Arduino ini dapat digunakan secara plug and play. Beberapa contoh papan Arduino
dengan port USB, ialah: Arduino Uno, Arduino Duemilanove, Arduino Diecimila,
Arduino NG Rev. C. dan masih banyak lagi
.
b. Arduino Serial.
Papan Arduino ini menggunakan port serial RS232 sebagai antar muka
pemrograman atau komunikasi komputernya. Penggunan papan Arduino jenis ini cukup
rumit, sehingga dibutuhkan kecakapan yang cukup memadai dari user.
c. Arduino Mega
Papan Arduino jenis ini merupakan jenis papan Arduino dengan spesifikasi yang
lebih tinggi yang telah dilengkapi dengan tambahan pin digital, pin analog, port serial dan
peripheral lainnya yang dapat meningkatkan kemampuan papan Arduino jenis ini.
Beberapa contoh papan Arduino jenis ini, ialah: Arduino Mega dan Arduino Mega 2560.
d. Arduino Fio
Papan Arduino jenis ini merupakan jenis papan Arduino yang khusus dikembangkan
untuk keperluan project Nirkabel (Wireless).
e. Arduino Lilypad
Papan Arduino Lilypad merupakan jenis papan Arduino yang memiliki karakteristik
unik yang tidak dimiliki papan Arduino jenis lain. Papan Arduino Lilypad meiliki bentuk
melingkar yang tidak umum dijumpai pada papan-papan Arduino lainnya. Contoh papan
Arduino jenis ini, ialah: LilyPad 00, LilyPad 01, LilyPad 02, LilyPad 03, dan LilyPad04.
f. Arduino BT
Papan Arduino jenis ini memiliki kelebihan tersendiri yang tidak dimiliki oleh papan
Arduino jenis lain. Pada papan Arduino jenis ini telah terpasang modul Bluetooth untuk
komunikasi nirkabel (Wireless).
f. Arduino Nano
Papan Arduino Nano merupakan jenis papan yang mwmiliki bentuk paling simple
dibandingkan dengan papan Arduino jenis lain. Papan Arduino Nano memiliki bentuk
compact dengan port USB sebagai antar muka dan media komunikasi dengan komputer.
Arduino Nano juga biasa digunakan bersama breadboard. Contohnya ialah sebagai
berikut; Arduino Nano 3.0 dan Arduino 2.x.
9. Apa kelebihan dan kekurangan arduino?
Jawab :
Kelebihan
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
Kekurangan
10. Buatlah program untuk running led menggunakan arduino !
Jawab:
11. Download konfigurasi pin Arduino!
Jawab:
12. Apa yang dimaksud USART ?
Jawab: USART (Universal Synchronous and Asynchronous serial Receiver and Transmitter
), merupakan salah satu mode komunikasi yang dimiliki oleh Mikrokontroler ATMega8535.
USART memiliki 2 pin (RxD dan TxD) untuk Asynchronous dan 3 bit TxD, RxD, xCK
untuk Synchronous.
13. Berapakah arus minimal yang dibutuhkan untuk menyalakan LED?
Jawab : LED berdiameter 3 mm - 5 mm pada umumnya beroperasi 20 mA sampai 30 mA.
14. Download gambar rangkaian LED!Jawab :
15. Buatlah program untuk meyalakan 4 buah LED secara bergantian!
Jawab :
void setup() {
pinMode(13, OUTPUT );
pinMode(12, OUTPUT );
pinMode(11, OUTPUT );
pinMode(10, OUTPUT);
pinMode(9, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH );
delay(100);
digitalWrite(13, LOW);
delay(100);
digitalWrite(12, HIGH );
delay(100);
digitalWrite(12, LOW );
delay(100);
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
digitalWrite(10, HIGH);
delay(100);
digitalWrite(10, LOW);
delay(100);
digitalWrite(9, HIGH);
delay(100);
digitalWrite(9, LOW);
delay(100);
}
16. Komponen apa saja yang digunakan untuk membuat minimum sistem pada ATMega 8535?
Jawab:
a. Sistem minimum ini meliputi catu daya mikrokontroller (vcc) yang berkisar antara 2,7
V – 5,5 V,
b. Kristal oscillator (opsional) yang berfungsi sebagai referensi kecepatan akses
mikrokontroller (kristal oscillator diperlukan jika menginginkan referensi clock yang
tinggi, tapi tanpa kristal oscillator pun mikrokontroler masih dapat bekerja, karena
sudah memiliki referensi clock internal),
c. Referensi ADC (Analog to digital konverter),
d. Tombol reset,
e. Serta port-port I/O.
17. Bahasa apa saja yang digunakan mikrokontroller agar dapat diprogram ?
Jawab: Bahasa Assembly, Bahasa Bascom, Bahasa C dan lain sebagainya.
DAFTAR PUSTAKA
Ino Suryana, Drs., M.Kom. Modul Praktikum Mikroprosesor, 2014. Laboratorium Hardware Universitas Padjadjaran.
http://r0fqh1.blogspot.com/2012/04/microcontroller-atmega-16.htmlhttp://digitallaboratory.wordpress.com/2010/01/21/apa-beda-atmega-8535-dan-8535l/http://christianto.tjahyadi.com/tag/atmega8535-atmega16-atmega32http://fahmizaleeits.wordpress.com/tag/keunggulan-atmega-8535/http://ghavianarduino.blogspot.com/2013/09/pengertian-arduino.htmlhttp://afif1609.blogspot.com/2013/05/jenis-jenis-papan-arduino.htmlhttp://fahmizaleeits.wordpress.com/tag/kelebihan-arduino/http://anotherorion.com/membuat-running-led-dengan-arduino/http://komputasirobotic.blogspot.com/2014/02/membuat-running-led-dengan-arduino-pada.htmlhttp://www.duniaelektronika.net/mikrokontroler-atmega8535-sistem-minimum/