Anda di halaman 1dari 7

STRUKTUR MIKROKONTROLLER SECARA UMUM

Blok Diagram Mikrokontroler

Arsitektur Mikrokontroler
FUNGSI TIAP BAGIAN MIKROKONTROLLER

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.
Accumulator (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 baik 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.

PRINSIP KERJA DARI MIKROKONTROLER


1. Berdasarkan nilai yang berada pada register Program Counter, mikrokontroler
mengambil data pada ROM dengan address sebagaimana nilai yang tertera program
counter. Selanjutnya Program Counter ditambah nilainya dengan 1 (increment) secara
otomatis. Data yang diambil tersebut adalaha urutan instruksi program pengendali
mikrokontroler yang sebelumnya telah dibuat oleh pemakai.
2. Instruksi tersebut diolah dan dijalankan. Proses pengerjaan bergantung pada jenis
instruksi: bisa membaca, mengubah nilai-nilai pada register, RAM, isi port, atau
melakukan pembacaan dan dilanjutkan dengan pengubahan data.
3. Program Counter telah berubah nilainya (baik karena penambahan otomatis sebagaimana
pada langkah 1 di atas atau karena pengubahan pada langkah 2). Selanjutnya yang
dilakukan mikrokontroler adalah mengulang kembali siklus ini pada langkah 1. Demikian
seterusnya hingga power dimatikan.
Dari pengertian di atas dapat dismpulkan bahwa pada dasarnya unjuk kerja mikrokontroler
sangatlah bergantung pada urutan instruksi yang dijalankannya, yaitu program yang ditulis di
ROM.

DIAGRAM PIN DAN FUNGSINYA

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= Master Out Slave In), P1.6 (MISO=
Master In Slave Out) dan P1.7 (SCK= Serial
ClocK) 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:

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:

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

PROSEDUR MEMPROGRAM MIKROKONTROLLER


Untuk memprogram suatu mikrokontroler terdapat banyak bahasa pemrograman yang dapat
digunakan. Bahasa pemrograman yang biasa digunakan dalam pemrograman mikrokontroler
terdahulu adalah Assembly. File bahasa Assembly (ASM) dapat dituliskan menggunakan
pengolah kata (misal Notepad), untuk kemudian dikompile menggunakan Assembler untuk
mendapatkan file HEX. File HEX inilah yang dimasukkan ke mikrokontroler menggunakan
perangkat lunak pemrogram (programmer) melalui perantaraan kabel paralel ataupun serial.
Gambar di bawah menunjukkan langkah-langkah pada pemrograman mikrokontroler secara
umum.
Saat ini telah dikembangkan beberapa kompiler untuk beberapa bahasa pemrograman tingkat
tinggi yang dapat digunakan pada pemrograman mikrokontroler. Untuk mikrokontroler keluarga
AVR perangkat lunak pemrograman yang dapat digunakan antara lain SDCC (Small Device C
Compiler) dari Sandepp Duta (http://sdcc.sourceforge.net), Bascom-AVR (Basic Compiler) dari
MCS

Electronics

(www.mcse.com),

(http://www.hpinfotech.com),
(www.arduino.cc).

dan

CodeVision

WinAVR

AVR

dari

(winavr.sourceforge.net)

HP

InfoTech

serta

Arduino

TUGAS
1.
2.
3.
4.
5.

Sebutkan bagian-bagian mikrokontroller dan gambarkan diagram arsitekturnya!


Apa yang dimaksud dengan BUS? Jelaskan!
Apa yang dimaksud dengan register umum? Beri contoh!
Apa yang dimaksud dengan register khusus? Beri contoh!
Pada penggunaan memori terdapat istilah volatile dan non volatile, jelaskan kedua istilah
tersebut.
6. Jelaskan prinsip kerja mikrokontroller!
7. Jelaskan fungsi masing-masing PIN pada mikrokontroller!
8. Jelaskan prosedur memprogram mikrokontroller secara umum.
9. Sebutkan dan jelaskan jenis-jenis mikrokontroller AVR!
10. Bandingkan secara singkat prosedur memprogram mikrokontroller yang disebutkan di atas!
11. Jelaskan makna dari istilah berikut pada mikrokontroller:
Parallel
Serial
PDIP
Pull Up

Anda mungkin juga menyukai