Anda di halaman 1dari 6

MODUL PEMBELAJARAN I

ARSITEKTUR MIKROKONTROLER AT89S/CXX


1.

Pendahuluan
Mikrokontroler adalah suatu unit yang adapat diprogram cara kerjanya, sehingga dapat
dipergunakan untuk keperluan yang berbeda. Pada masa sekarang mikrokontroler banyak digunakan
sebagai pengontrol pada peralatan-peralatan mulai dari mainan/hobie, peralatan rumah tangga, sampai
kontrol pada peralatan industri.
Beberapa mikrokontroler yang beredar dipasaran merupakan keluaran beberapa pabrik yang
sudah terkenal, misal:
Intel., contoh: 8031, 89C51 dll
Zilog, contoh: Z8, Z8F1680 dll
Microchip, contoh: PIC16F84, PIC16F877 dll
Motorola, contoh: 68HC11, MC68HC705V12CFN dll
Philips Semiconductors, contoh: LPC2000, LPC900, LPC700 dll
Atmel, contoh: Atmel AT91 series (ARM THUMB architecture), AT90, Tiny & Mega series AVR
(Atmel Norway design), Atmel AT89 series (Intel 8051/MCS51 architecture)
Dalam pembahasan modul ini akan dijelaskan penggunaan mikrokontroler dari Atmel jenis AT89S
series, dengan alasan lebih mudah dalam pemrogramannya, pengembangannya dan harganya yang
murah serta telah banyak beredar di pasaran.
2.

Struktur Mikrokontroler
Blok diagram umum mikrokontroler adalah sebagai berikut:

Gambar 1.1. Blok Diagram Mikrokontroler


Masing-masing bagian tersebut saling dihubungkan melalui internal BUS, umumnya terdiri dari 3
jenis bus, yaitu: address bus, data bus dan control bus.
Diagram Arsitektur AT89SXX

Gambar 1.2. Arsitektur Mikrokontroler

Fungsi setiap bagian:

Register adalah suatu tempat penyimpanan (Variabel) bilangan bulat 8 bit atau 16 bit. Pada
umumnya register berjumlah banyak, dan masing-masing ada yang memiliki fungsi khusus dan
ada yang memiliki fungsi umum.

Accumulor (register A), merupakan salah satu register khusus yang berfungsi sebagai operand
umum proses aritmatika dan logika.

Program counter, merupakan salah satu register khusus yang berfungsi sebagai
pencacah/penghitung eksekusi program mikrokontroler

ALU (Arithmetical and Logical Unit), ALU memiliki kemampuan khusus dalam mengerjakan
proses-proses arithmetika (penjumlahan, pengurangan, perkalian dan pembagian) dan operasi
logika (AND, OR, XOR dan NOT)

Clock circuits, mikrokontroler merupakan rangkaian digital sekuensial, dimana kerjanya


berjalan melalui sinkronisasi clock. Karenanya diperlukan clock circuits yang menyediakan clock
bagi seluruh bagian rangkaian

Internal ROM (On Chip Flash), merupakan memori yang isinya tidak dapat diubah atau
dihapus (pada saat mikrokontroler berjalan) isinya hanya dapat dibaca saja. ROM biasanya berisi
program (urutan-urutan instruksi) untuk menjalankan mikrokontroler. Data pada ROM dibaca
secara berurutan.

Internal RAM, merupakan memori yang isinya dapat diubah atau dihapus. RAM pada
mikrokontroler biasanya berisi data-data variable dan register. Data yang tersimpan pada RAM
bersifat hilang jika catu daya yang diberikan hilang (mati).

Stack pointer, merupakan bagian dari RAM yang memiliki metode penyimpanan dan
pengambilan data yang khusus. Dimana data yang paling terakhir dimasukkan merupakan data
yang pertama kali dibaca kembali (LIFO).

I/O port (serial dan parallel), merupakan sarana yang digunakan mikrokontroler untuk
mengakses peralatan di luar dirinya, memasukan dan mengeluarkan data.

Interrupt circuits, merupakan rangkaian yang mengendalikan sinyal-sinyal interupsi bail


internal maupun eksternal, dengan adanya sinyal interupsi akan mengakibatkan program utama
yang sedang dikerjakan berhenti sejenak, dan bercabang/.loncat ke program rutin layanan interupsi
(RLI) yang diminta, setelah RLI selesai dikerjakan, mikrokontroler kembali melanjutkan program
utama yang tertunda tadi.
Setiap mikrokontroler memiliki blok diagram dan arsitektur yang berbeda satu dengan yang lainnya,
tergantung pada banyak device yang terintegrasi di dalamnya, beberapa jenis mikrokontroler telah
dilengkapi oleh ADC/DAC, PWM, WDT dan lain-lain.
3.

Cara Kerja Mikrokontroler


Prinsip kerja mikrokontroler adalah sebagai berikut:

Berdasarkan nilai yang berada pada register Program Counter, mikrokontroler mengambil data
pada ROM dengan alamat sebagaimana yang tertera pada register Program Counter. Selanjutnya
isi dari register Program Counter ditambah dengan satu (Increment) secara otomatis.
Data yang diambil pada ROM merupakan urutan instruksi program yang telah dibuat dan diisikan
sebelumnya oleh pengguna.

Instruksi yang diambil tersebut diolah dan dijalankan oleh mikrokontroler. Proses pengerjaan
bergantung pada jenis instruksi, bisa membaca, mengubah nilai-nilai pada register, RAM, isi Port,
atau melakukan pembacaan dan dilanjutkan dengan pengubahan data.

Program Counter telah berubah nilainya (baik karena penambahan otomatis pada langkah 1,
atau karena pengubahan-pengubahan pada langkah 2). Selanjutnya yang dilakukan oleh
mikrokontroler adalah mengulang kembali siklus ini pada langkah 1. Demikian seterusnya hingga
power dimatikan.

4.

Diagram Pin dan Fungsinya


Diagram pin AT89S51 kemasan PDIP adalah sebagai berikut:

Gambar 1.3. Diagram Pin AT89S51


Fungsi setiap pin adalah sebagai berikut:
Pin 1 8, Port 1 (P1.0 sampai dengan P1.7), merupakan port input/output delapan bit 8 dua
arah dengan internal pull-up.
P1.5 (MOSI), P1.6 (MISO) dan P1.7 (SCK) memiliki fungsi yang khusus dalam komunikasi
serial multiprosesor, dan pada pengisian program mikrokontroler dengan ISP (In System
Programming)
Pin 9, digunakan untuk memberikan system reset pada Mikrokontroler, rangkaian reset
diberikan dengan konfigurasi sebagai berikut:

Gambar 1.4. Konfigurasi Reset


Pin 10 17, Port 3 (P3.1 sampai dengan P3.7), merupakan port input/output delapan bit 8 dua
arah dengan internal pull-up.
Setiap pin pada Port 3 ini memiliki fungsi khusus yang langsung berhubungan dengan
hardware, fungsi tersebut adalah sebagai berikut:
P3.0 : RXD, port input/penerimaan data pada komunikasi serial
P3.1 : TXD, port output/pengiriman data pada komunikasi serial
P3.2 : (INT0), input interupsi eksternal channel 0 (active low)
P3.3 : (INT1), input interupsi eksternal channel 1 (active low)
P3.4 : T0, input clock ekternal untuk timer 0
P3.5 : T1, input clock ekternal untuk timer 1
P3.6 : (WR), merupakan saluran untuk kendali penulisan (active low), saat mikrokontroler
akan menulis data ke memori/device luar
P3.7 : (RD), merupakan saluran untuk kendali pembacaan (active low), saat mikrokontroler
akan membaca data dari memori/device luar
Pin 18, XTAL 2
Pin 19, XTAL 1
XTAL 1 dan XTAL 2 merupakan masukan untuk rangkaian osilator internal, konfigurasinya
bisa digunakan rangkaian sebagai berikut:

Gambar 1.5. Konfigurasi kristal untuk osilator

Nilai C1 dan C2 harus seimbang, nilainya berkisar 30pF atau 33pF


Nilai Kristal agar osilator internal bekerja berkisar 1MHz sampai 24 MHz, namun yang paling
lazim digunakan berkisar, 8 MHz, 11,0592MHz dan 12 MHz. Pada komunikasi serial dan
penggunaan timer lebih akurat digunakan kristal dengan nilai 11,0592 MHz
Pin 20, GND, masukan catu daya 0 Volt atau Ground
Pin 21 28, merupakan port input/output delapan bit 8 dua arah dengan internal pull-up. Juga
dapat difungsikan untuk jalur alamat byte tinggi (A8 sampai dengan A15) pada penggunaan
memori luar.
Pin 29, (PSEN), Program Strore Enable (active low), sinyal pengontrol yang diberfungsi untuk
membaca program dari memori eksternal.
Pin 30, ALE atau (PROG) active low, address latch enable, berfungsi menahan sementara
alamat byte rendah pada proses pengalamatan ke memori eksternal
Pin 31, (EA) atau VPP, merupakan pin yang berfungsi untuk memilih program untuk
menjalankan mikrokontroler, jika EA = 0 atau di-ground-kan maka akan digunakan program
pada memori eksternal, jika EA = 1, maka akan digunakan program pada on chip flash.
Pin 32 39, Port 0 (P0.1 sampai dengan P0.7), merupakan port input/output delapan bit 8 dua
arah tanpa internal pull-up, sehingga dalam aplikasi harus ditambahkan resistor pull-up
eksternal pada masing-masing pin, resistor pull up bernilai 4.7K Ohm terpasang langsung ke
VCC
Pin 40, VCC, catu daya +5 Volt DC

Lembar Evaluasi
1. Apa yang dimaksud dengan BUS? Jelaskan!
2. Apa yang dimaksud dengan register umum? Beri contoh!
3. Apa yang dimaksud dengan register khusus? Beri contoh!
4. Pada penggunaan memori terdapat istilah volatile dan non volatile, jelaskan kedua istilah
tersebut!
5. Jelaskan istilah berikut:
- Parallel
- Serial
- PDIP
- PLCC
- Pull Up

PDIP = Port Dual In Line Package


Pull Up = Pulled High / Port yang ditarik tinggi atau dibuat high keadaannya

Anda mungkin juga menyukai