Pemahaman konsep dasar dari mikrokontroler ditunjukkan pada Gambar 1.1 Diagram blok mikrokontroler umum.
Gambar 1.1 Diagram blok mikrokontroler umum
Masing-masing bagian tersebut saling dihubungkan melalui internal bus, umumnya terdiri dari 3 bus yaituaddress bus, data bus dan control bus.
Masing-masing bagian memiliki fungsi-fungsi :
a. Register. Register adalah suatu tempat penyimpanan (variabel) bilangan bulat 8 atau 16 bit. Pada umumnya register jumlahnya banyak, masing-masing ada yang memiliki fungsi khusus dan ada pula yang memiliki kegunaan umum. Register yang memiliki fungsi khusus misalnya adalah register timer yang berisi data penghitungan pulsa untuk timer, atau register pengatur mode operasi counter (pencacah pulsa). Sedangkan register yang bersifat umum digunakan untuk menyimpan data sementara yang diperlukan untuk proses penghitungan dan proses operasi mikrokontroler. Register dengan kegunaan umum dibutuhkan mengingat pada saat yang bersamaan mikrokontroler hanya mampu melakukan operasi aritmatika atau logika hanya pada satu atau dua operand saja. Sehingga untuk operasi-operasi yang melibatkan banyak variabel harus dimanipulasi dengan menggunakan variabel-variabel register umum.
b. Accumulator. Merupakan salah satu register khusus yang berfungsi sebagai operand umum proses aritmetika dan logika.
c. Program Counter. Merupakan salah satu register khusus yang berfungsi sebagai pencacah/penghitung eksekusi program mikrokontroler.
d. ALU (Arithmetic and Logic Unit). ALU memiliki kemampuan mengerjakan proses-proses aritmatika (penjumlahan, pengurangan, perkalian, pembagian) dan operasi logika (misalnya AND, OR, XOR, NOT) terhadap bilangan bulat 8 atau 16 bit.
d. Clock Circuits. Mikrokontroler adalah rangkaian logika sekuensial, dimana proses kerjanya berjalan melalui sinkronisasi clock. Karenanya diperlukan clock circuits yang menyediakan clock bagi seluruh bagian rangkaian.
e. Internal ROM (Read Only Memory). Merupakan memori penyimpan data yang isinya tidak dapat diubah atau dihapus (hanya dapat dibaca). ROM biasanya diisi dengan program untuk menjalankan mikrokontroler segera setelah power dinyalakan, dan berisi data-data konstanta yang diperlukan oleh program. Isi ROM tidak dapat hilang walaupunpower dimatikan.
f. Internal RAM (Random Access Memory). Merupakan memori penyimpan data yang isinya dapat diubah atau dihapus. RAM biasanya berisi data-data variabel dan register. Data yang tersimpan pada RAM bersifat hilang jika catu daya yang terhubung padanya dimatikan.
g. Stack Pointer. Stack adalah bagian dari RAM yang memiliki metode penyimpanan dan pengambilan data secara khusus. Data yang disimpan dan dibaca tidak dapat dilakukan dengan metode acak. Karena data yang masuk ke dalam stack pada urutan yang terakhir adalah data yang pertama kali dibaca kembali. Stack Pointer berisi offset dimana posisi data stack yang terakhir masuk (atau yang pertama kali dapat diambil).
h. I/O (input/output) Ports. Merupakan sarana yang dipergunakan oleh mikrokontroler untuk mengakses peralatan-peralatan lain di luar dirinya, berupa pin-pin yang dapat berfungsi untuk mengeluarkan data digital ataupun menginputkan data.
i. Interrupt circuits. Adalah rangkaian yang memiliki fungsi untuk mengendalikan sinyal-sinyal interupsi baik internal maupun eksternal. Adanya sinyal interupsi akan menghentikan eksekusi normal program mikrokontroler untuk selanjutnya menjalankan sub-program untuk melayani interupsi tersebut.
Diagram blok tersebut tidaklah selalu sama untuk setiap jenis mikrokontroler. Beberapa mikrokontroler menyertakan rangkaian ADC (Analog to Digital Converter) di dalamnya, ada pula yang menyertakan port I/O serial di samping port I/O paralel yang sudah ada.

Tidak ada komentar:
Posting Komentar