MIKROKONTROLER
AVR
Mikrokontroler AVR merupakan
salah satu jenis arsitektur mikrokontroler yang menjadi andalan Atmel.
Arsitektur ini dirancang memiliki berbagai kelebihan dan merupakan
penyempurnaan dari arsitektur mikrokontroler-mikrokontroler yang sudah
ada. Berbagai seri mikrokontroler AVR
telah diproduksi oleh Atmel dan digunakan di dunia sebagai mikrokontroler yang
bersifat low cost dan high performance. Di Indonesia, mikrokontroler AVR banyak
dipakai karena fiturnya yang cukup lengkap, mudah untuk didapatkan, dan
harganya yang relatif terjangkau.
2.1
Varian Mikrokontroler AVR
Antar seri mikrokontroler AVR memiliki beragam tipe dan
fasilitas, namun kesemuanya memiliki arsitektur yang sama, dan juga set
instruksi yang relatif tidak berbeda. Tabel 2.1 membandingkan beberapa seri
mikrokontroler AVR buatan Atmel.
|
Keterangan:
·
Flashadalah suatu jenis Read Only Memory yang
biasanya diisi dengan program hasil buatan manusia yang harus dijalankan oleh
mikrokontroler
·
RAM (Random Acces Memory) merupakan memori yang
membantu CPU untuk penyimpanan data sementara dan pengolahan data ketika
program sedang running
·
EEPROM
(Electrically Erasable Programmable Read Only Memory) adalah memori
untuk penyimpanan data secara permanen oleh program yang sedang running
·
Port I/O adalah kaki untuk jalur keluar atau
masuk sinyal sebagai hasil keluaran ataupun masukan bagi program
·
Timer adalah modul dalam hardware yang bekerja
untuk menghitung waktu/pulsa
·
UART (Universal Asynchronous Receive Transmit)
adalah jalur komunikasi data khusus secara serial asynchronous
·
PWM (Pulse Width Modulation) adalah fasilitas
untuk membuat modulasi pulsa
·
ADC (Analog to Digital Converter) adalah
fasilitas untuk dapat menerima sinyal analog dalam range tertentu untuk
kemudian dikonversi menjadi suatu nilai digital dalam range tertentu
·
SPI (Serial Peripheral Interface) adalah jalur
komunikasi data khusus secara serial secara serial synchronous
·
ISP (In System Programming) adalah kemampuan
khusus mikrokontroler untuk dapat diprogram langsung dalam sistem rangkaiannya
dengan membutuhkan jumlah pin yang minimal
2.2 Arsitektur
Mikrokontroler AVR
Mikrokontroler AVR sudah menggunakan konsep arsitektur
Harvard yang memisahkan memori dan bus untuk data dan program, serta sudah
menerapkan single level pipelining. Selain itu mikrokontroler AVR juga
mengimplementasikan RISC (Reduced Instruction Set Computing) sehingga eksekusi
instruksi dapat berlangsung sangat cepat dan efisien. Blok sistem mikrokontroler AVR dapat dilihat
dalam Gambar 2.1.

Gambar
2.1 Blok Diagram Mikrokontroler AVR
Salah satu seri mikrokontroler
AVR yang banyak menjadi andalan saat ini adalah tipe ATtiny2313 dan ATmega8535.
Seri ATtiny2313 banyak digunakan untuk sistem yang relatif sederhana dan
berukuran kecil. Berikut adalah feature-feature mikrokontroler seri ATtiny2313.
·
Kapasitas memori Flash 2 Kbytes untuk program
·
Kapasitas memori EEPROM 128 bytes untuk data
·
Maksimal 18 pin I/O
·
8 interrupt
·
8-bit timer
·
Analog komparator
·
On-chip oscillator
·
Fasilitas In System Programming (ISP)
Sedangkan ATmega8535 banyak digunakan untuk
sistem yang kompleks, memiliki input sinyal analog, dan membutuhkan memori yang
relatif lebih besar. Berikut adalah feature-feature mikrokontroler seri
ATmega8535.
·
Memori Flash 8 Kbytes untuk program
·
Memori EEPROM 512 bytes untuk data
·
Memori SRAM 512 bytes untuk data
·
Maksimal 32 pin I/O
·
20 interrupt
·
Satu 16-bit timer dan dua 8-bit timer
·
8 channel ADC 10 bit
·
Komunikasi serial melalui SPI dan USART
·
Analog komparator
·
4 I/O PWM
·
Fasilitas In System Programming (ISP)
2.3
Peta Memori Mikrokontroler AVR
Gambar
2.2 memperlihatkan peta memori mikrokontroler AVR yang dapat dijelaskan sebagai
berikut:

Gambar
2.2 Peta memori mikrokontroler AVR
2.3.1
Memori Program
Mikrokontroler
AVR memiliki 8 kbyte On Chip In System Reprogrammable Flash Memory untuk
menyimpan program. Karena semua instruksi AVR
The ATmega8535 contains 8K bytes On-chip
In-System Reprogrammable Flash memory for program storage. Since all AVR
instructions are 16 or 32 bits wide, the Flash is organized as 4K x 16. For
software security, the Flash Program memory space is divided into two sections,
Boot Program section and Application Program section. The Flash memory has an
endurance of at least 10,000 write/erase cycles. The ATmega8535 Program Counter
(PC) is 12 bits wide, thus addressing the 4K program memory locations. The
operation of Boot Program section and associated Boot Lock bits for software
protection are described in detail in “Boot Loader Support – Read-While-Write
Self-Programming” on page 224. “Memory Programming” on page 237 contains a
detailed description on Flash Programming in SPI or Parallel Programming mode. Constant
tables can be allocated within the entire program memory address space (see the
LPM – Load Program Memory instruction description).
2.4
Penjelasan Fungsi Pin Mikrokontroler AVR
IC
mikrokontroler dikemas (packaging) dalam bentuk yang berbeda. Namun pada
dasarnya fungsi kaki yang ada pada IC memiliki persamaan. Gambar 2.3
menunjukkan salah satu bentuk IC seri mikrokontroler AVR ATmega8535.

Gambar
2.3 Bentuk fisik Mikrokontroler ATMega8535
Berikut adalah penjelasan fungsi tiap kaki.
A. Port
A
Merupakan
8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up
resistor (dapat diatur per bit). Output buffer Port A dapat memberi arus 20 mA
dan dapat mengendalikan display LED secara langsung. Data Direction Register
port A (DDRA) harus disetting terlebih dahulu sebelum Port A digunakan. Bit-bit
DDRA diisi 0 jika ingin memfungsikan pin-pin port A yang bersesuaian sebagai
input, atau diisi 1 jika sebagai output. Selain itu, kedelapan pin port A juga
digunakan untuk masukan sinyal analog bagi A/D converter.
B. Port
B
Merupakan
8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up
resistor (dapat diatur per bit). Output buffer Port B dapat memberi arus 20 mA
dan dapat mengendalikan display LED secara langsung. Data Direction Register
port B (DDRB) harus disetting terlebih dahulu sebelum Port B digunakan. Bit-bit
DDRB diisi 0 jika ingin memfungsikan pin-pin port B yang bersesuaian sebagai
input, atau diisi 1 jika sebagai output. Pin-pin port B juga memiliki untuk
fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam Tabel 2.2.
Tabel
2.2 Fungsi Khusus Port B
Port
Pin
|
Fungsi
Khusus
|
PB0
|
T0
= timer/counter 0 external counter input
|
PB1
|
T1
= timer/counter 0 external counter input
|
PB2
|
AIN0
= analog comparator positive input
|
PB3
|
AIN1
= analog comparator negative input
|
PB4
|
SS
= SPI slave select input
|
PB5
|
MOSI
= SPI bus master output / slave input
|
PB6
|
MISO
= SPI bus master input / slave output
|
PB7
|
SCK
= SPI bus serial clock
|
C. Port
C
Merupakan
8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up
resistor (dapat diatur per bit). Output buffer Port C dapat memberi arus 20 mA
dan dapat mengendalikan display LED secara langsung. Data Direction Register
port C (DDRC) harus disetting terlebih dahulu sebelum Port C digunakan. Bit-bit
DDRC diisi 0 jika ingin memfungsikan pin-pin port C yang bersesuaian sebagai
input, atau diisi 1 jika sebagai output. Selain itu, dua pin port C (PC6 dan
PC7) juga memiliki fungsi alternatif sebagai oscillator untuk timer/counter 2.
D. Port
D
Merupakan
8-bit directional port I/O. Setiap pinnya dapat menyediakan internal pull-up
resistor (dapat diatur per bit). Output buffer Port D dapat memberi arus 20 mA
dan dapat mengendalikan display LED secara langsung. Data Direction Register
port D (DDRD) harus disetting terlebih dahulu sebelum Port D digunakan. Bit-bit
DDRD diisi 0 jika ingin memfungsikan pin-pin port D yang bersesuaian sebagai
input, atau diisi 1 jika sebagai output. Selain itu, pin-pin port D juga
memiliki untuk fungsi-fungsi alternatif khusus seperti yang dapat dilihat dalam
Tabel 2.3.
Tabel
2.3 Fungsi Khusus Port D
Port
Pin
|
Fungsi
Khusus
|
PD0
|
RDX
(UART input line)
|
PD1
|
TDX
(UART output line)
|
PD2
|
INT0
( external interrupt 0 input )
|
PD3
|
INT1
( external interrupt 1 input )
|
PD4
|
OC1B
(Timer/Counter1 output compareB match output)
|
PD5
|
OC1A
(Timer/Counter1 output compareA match output)
|
PD6
|
ICP
(Timer/Counter1 input capture pin)
|
PD7
|
OC2
(Timer/Counter2 output compare match output)
|
E.
RESET
RST
pada pin 9 merupakan reset dari AVR. Jika pada pin ini diberi masukan low
selama minimal 2 machine cycle maka system akan di-reset.
F.
XTAL1
XTAL1
adalah masukan ke inverting oscillator amplifier dan input ke internal clock
operating circuit.
G.
XTAL2
XTAL2
adalah output dari inverting oscillator amplifier.
H. AVcc
Avcc
adalah kaki masukan tegangan bagi A/D Converter. Kaki ini harus secara
eksternal terhubung ke Vcc melalui lowpass filter.
I. AREF
AREF
adalah kaki masukan referensi bagi A/D Converter. Untuk operasionalisasi ADC,
suatu level tegangan antara AGND dan Avcc harus dibeikan ke kaki ini.
J. AGND
AGND
adalah kaki untuk analog ground. Hubungkan kaki ini ke GND, kecuali jika board
memiliki anlaog ground yang terpisah.
2.5 Rangkaian
Sistem Minimum AVR 8535
Sistem minimum (sismin) mikrokontroler adalah rangkaian
elektronik minimum yang diperlukan untuk beroperasinya IC mikrokontroler.
Sismin ini kemudian bisa dihubungkan dengan rangkaian lain untuk menjalankan
fungsi tertentu. Di keluarga mikrokontroler AVR, seri 8535 adalah salah satu
seri yang sangat banyak digunakan.
Untuk membuat rangkaian sismin Atmel AVR 8535 diperlukan
beberapa komponen yaitu:
·
IC mikrokontroler ATmega8535
·
1 XTAL 4 MHz atau 8 MHz (XTAL1)
·
kapasitor kertas yaitu dua 22 pF (C2 dan C3) serta
100 nF (C4)
·
1 kapasitor elektrolit 4.7 uF (C12) 2 resistor
yaitu 100 ohm (R1) dan 10 Kohm (R3)
·
1 tombol reset pushbutton (PB1)
·
Selain itu tentunya diperlukan power suply yang
bisa memberikan tegangan 5V DC.
Rangkaian
sistem minimum ini sudah siap untuk menerima sinyal analog (fasilitas ADC) di
port A. Rangkaiannya dapat dilihat dalam Gambar 2.4.

Gambar
2.4 Sistem Minimum Mikrokontroler ATMega 8535
ok min, makasih banyak
BalasHapuspower supply hp
Dapatkan Double Bonus dari Donaco Poker Setiap Hari!!
BalasHapusMau Tau Caranya??? Ayo Daftar..!!.atau Hubungi Kami Segera......
WHATSAPP : +6281333555662