Anda di halaman 1dari 6

Mikrokontroler ATmega8535

1. MIKROKONTROLER
Mikrokontroler merupakan suatu komponen elektronika yang didalamnya terdapat rangkaian
mikroprosesor, memori (RAM/ROM) dan I/O, rangkaian tersebut terdapat dalam level chip atau biasa
disebut single chip microcomputer. Pada mikrokontroler sudah terdapat komponen-komponen
mikroprosesor dengan bus-bus internal yang saling berhubungan. Komponen–komponen tersebut
adalah RAM, ROM, Timer, komponen I/O paralel dan serial, dan interrupt controller. Dengan harga yang
terjangkau memungkinkan mikrokontroler digunakan pada berbagai sistem elektronis, seperti pada
robot, sistem alarm, peralatan telekomunikasi, hingga sistem automasi industri.

CHIP MIKROKONTROLER ATmega8535

Mikrokontroler sebagai sebuah “one chip solution” pada dasarnya adalah rangkaian terintregrasi
(Integrated Circuit-IC) yang telah mengandung secara lengkap berbagai komponen pembentuk sebuah
komputer. Berbeda dengan penggunaan mikroprosesor yang masih memerlukan komponen luar
tambahan seperti RAM, ROM, Timer, dan sebagainya untuk sistem mikrokontroler, tambahan
komponen diatas secara praktis hampir tidak dibutuhkan lagi. Hal ini disebabkan semua komponen
penting tersebut telah ditanam bersama dengan sistem prosesor ke dalam IC tunggal mikrokontroler
bersangkutan. Dengan alasan itu sistem mikrokontroler dikenal juga dengan istilah populer the real
Computer On a Chip (komputer utuh dalam keping tunggal), sedangkan sistem mikroprosesor dikenal
dengan istilah yang lebih terbatas yaitu Computer On a Chip (komputer dalam keping tunggal).
Mikrokontroler AVR memiliki arsitektur RISC 8 bit, dimana semua instruksi dikemas dalam kode 16-bit
(16-bits word) dan sebagian besar instruksi dieksekusi dalam 1 (satu) siklus clock, berbeda dengan
instruksi MCS51 yang membutuhkan 12 siklus clock. Tentu saja itu terjadi karena kedua jenis
mikrokontroler tersebut memiliki arsitektur yang berbeda. AVR berteknologi RISC (Reduced Instruction
Set Computing), sedangkan seri MCS51 berteknologi CISC (Complex Instruction Set Computing). Secara
umum, AVR dapat dikelompokkan menjadi empat kelas, yaitu keluarga ATtiny, keluarga AT90Sxx,
keluarga ATMega dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah
memori, peripheral dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa
dikatakan hampir sama.

Arsitektur ATmega8535
Gambar Blok Diagram Fungsional ATmega8535
(Sumber: Lingga,2006).

Konfigurasi Pin ATmega8535

Konfigurasi pin ATmega8535 bisa dilihat pada gambar 2.6, Dari gambar tersebut dapat dijelaskan secara
fungsional konfigurasi pin ATmega8535 sebagai berikut :
a. VCC merupakan pin yang berfungsi sebagai pin masukan catu daya.
b. GND merupakan pin ground.
c. Port A (PA0..PA7) merupakan pin I/O dua arah dan pin masukan ADC.
d. Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu Timer/Counter,
komparator analog dan SPI.
e. Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu TWI, komparator analog
dan Timer Oscilator.
f. Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu komparator analog,
interupsi eksternal dan komunikasi serial.
g. RESET merupakan pin yang digunakan untuk me-reset mikrokontroler.
h. XTAL1 dan XTAL2 merupakan pin masukan clock eksternal.
i. AVCC merupakan pin masukan tegangan untuk ADC.
j. AREF merupakan pin masukan tegangan referensi ADC.
BAHASA PROGRAM ASSEMBLY AVR
Operasi Port Input / Output
A. in : membaca data I/O port ke dalam register
Contoh : in r16,PinA
B. out : menulis data register ke I/O port
Contoh : out PortA,r16
C. ldi : (load immediate) : menulis konstanta ke register sebelum konstanta tersebut dikeluarkan ke I/O
port
Contoh : ldi r16,0xff
D. sbi : (set bit in I/O) : membuat logika high pada sebuah bit I/O port
Contoh : sbi PortB,7
E. cbi : (clear bit in I/O) : membuat logika low pada sebuah bit I/O port
Contoh : cbi PortB,5
F. sbic : (skip if bit in I/O is clear) : lompati satu instruksi jika bit I/O port dalam kondisi clear/low
Contoh : sbic PortA,3
G. sbis : (skip if bit in I/O is set) : lompati satu instruksi jika bit I/O port dalam kondisi set/high
Contoh : sbis PortB,3

Operasi Aritmatika
A. add : Menambahkan isi dua register.
Contoh : add r15,r14 ; r15=r15+r14
B. adc : Menambahkan isi dua register dan isi carry flag
Contoh : adc r15,r14 ; r15=r15+r14+C
C. sub : Mengurangi isi dua register.
Contoh : sub r19,r14 ; r19=r19-r14
D. mul : Mengalikan dua register. Perkalian 8 bit dengan 8 bit menghasilkan bilangan 16 bit yang
disimpan di r0 untuk byte rendah dan di r1 untuk byte tinggi. Untuk memindahkan bilangan 16 bit antar
register digunakan instruksi movw (copy register word).
Contoh : mul r21,r20 ; r1:r0=r21*r20

Operasi Logika
A. and : Untuk meng-and-kan dua register
Contoh : and r23,r27 ; r23=r23 and r27
B. andi : Untuk meng-and-kan register dengan konstanta immediate
Contoh : andi r25,0b11110000
C. or : Untuk meng-or-kan dua register
Contoh : or r18,r17 ; r18=r18 or r17
D. ori : Untuk meng-or-kan register dengan konstanta immediate
Contoh : ori r15,0xfe
E. inc : Untuk menaikkan satu isi sebuah register
Contoh : inc r14
F. dec : Untuk menurunkan satu isi sebuah register
Contoh : dec r15
G. clr : Untuk mengosongkan (membuat jadi nol) isi register
Contoh : clr r15 ; r15=0x00
H. ser : Set all bit in register. Membuat jadi satu isi register
Contoh : ser r16 ; r16=0xff

Instruksi Percabangan
A. sbic (skip if bit in I/O is cleared) : Skip jika bit I/O yang diuji clear
B. sbis (skip if bit in I/O is set) : Skip jika bit I/O yang diuji set
C. sbrc (skip if bit in register is clear) : Skip jika bit dalam register yang diuji clear
D. cp (compare) : Membandingkan isi dua register
E. mov (move) : Meng-copy isi dua register
F. cpi (compare with immediate) : Membandingakan isi register dengan konstanta tertentu.
G. breq (branch if equal) : Lompat ke label tertentu jika suatu hasil perbandingan adalah sama.
H. brne (branch if not equal) : Lompat ke label tertentu jika suatu hasil perbandingan adalah tidak sama.
I. rjmp (relative jump) : Lompat ke label tertentu.
J. rcall (relative call) : Memanggil subroutin.
K. ret (return) : Keluar dari subrutin.

B. ATMEGA8
Pada postingan kali ini, sesuai dengan janji saya pada tulisan sebelumnya kali ini saya akan membahas
lebih dalam tentang ATMega8. Disini saya fokuskan pada pembahasan tentang fungsi pin, clock, fuse bit,
dll.
Sedikit saya ulas tentang pembahasan saya pada tulisan sebelumnya, bahwa mikrokontroler ATMega8
merupakan mikrokontroler keluarga AVR 8bit. Beberapa tipe mikrokontroler yang “berkeluarga” sama
dengan ATMega8 ini antara lain ATMega8535, ATMega16, ATMega32, ATmega328, dll. Yang
membedakan antara mikrokontroler yang saya sebutkan tadi antara lain adalah, ukuran memori,
banyaknya GPIO (pin input/output), peripherial (USART, timer, counter, dll). Dari segi ukuran fisik,
ATMega8 memiliki ukuran fisik lebih kecil dibandingkan dengan beberapa mikrokontroler yang saya
sebutkan diatas. Namun untuk segi memori dan periperial lainnya ATMega8 tidak kalah dengan yang
lainnya karena ukuran memori dan periperialnya relatif sama dengan ATMega8535, ATMega32, dll,
hanya saja jumlah GPIO lebih sedikit dibandingkan mikrokontroler yang saya sebutkan diatas. Untuk
pemahaman lebih lanjut akan saya bahas di bawah ini.

Fungsi dan Kebutuhan Pin


Pinout IC mikrokontroler ATMega8 yang berpackage DIP dapat dilihat di bawah ini.
Seperti yang kita lihat ATMega8 memiliki 3 buah PORT utama yaitu PORTB, PORTC, dan PORTD dengan
total pin input/output sebanyak 23 pin. PORT tersebut dapat difungsikan sebagai input/output digital
atau difungsikan sebagai periperial lainnya.
Feature Mikrokontroler AVR ATMega 8535
 Mikrokontroler AVR dengan konsumsi daya rendah (2,7 Vdc – 5,5 Vdc)
 Arsitektur dasar RISC dengan 32 buah register 8 bit
 8 KB memori ISP dengan 10.000 siklus pemrograman
 EEPROM sebesar 512 byte
 SRAM sebesar 512 byte
 Program bisa dikunci/ di lock
 32 line I/O (Port A, Port B, Port C dan Port D) yang dapat di program
 3 buah timer denga 2 biauh timer 8 bit dan 1 buah timer 16 bit
 4 Chanel PWM
 Real time controler yang terpisah denga Oscilator
 8 Chanel Line analog dengan ADC 10 Bit (Port A)
 Komparator analag yang terintegrasi di dalam chip
 Two wire serial Interface
 Port antarmuka SPI
 Port USART untuk komunikasi serial

Anda mungkin juga menyukai