Senin, 13 Juni 2016

Arsitektur Dan Prinsip Kerja Mikrokontroler



ARSITEKTUR DAN PRINSIP KERJA MIKROKONTROLER

Mikrokontroler berasal dari kata microcontroller yang berarti pengendali mikro, Mikrokontroler adalah suatu IC {Integrated Circuit} pengontrol yang bersistem computer, yang memiliki kemampauan manipulasi data {informasi} berdasarkan suatu urutan instruksi {program} yang dibuat programmer.

A. ARSITEKTUR MIKROKONTROLER
Mikrokontroler terdiri dari bagian-bagian yang saling dihubungkan melalui internal bus biasanya terdiri dari 3 bus yaitu addres bus, data bus dan control bus. Untuk paham bagaimana  prinsip kerja mikrokontroler sebelumnya harus memahami bagian-bagian utama dan fungsinya secara umum. Berikut ini diagram blok mikrokontroler secara umum : 


Gambar. Diagram Blok Mikrokontroler.






Ada 4 komponen utama dari mikrokontroler  yaitu prosesor CPU, memori, input/output dan pendukung, masing-masing komponen tersebut terdiri dari bagian-bagian yang masing-masing mempunyai fungsi  :

1. Komponen Prosesor CPU { Central Processing Unit }
CPU merupakan otak merupakan otak dari mikrokontroler yang berfungsi mengordinasikan seluruh operasi komputasi, melakukan operasi aritmatika, melakukan operasi logika dan mengendalikan kerja sistem secara keseluruhan. CPU terdiri dari 2 bagian yaitu ALU, CU, dan RU.
a. ALU {Arithmetic and Logic Unit}
Bagian yang mengerjakan proses-proses aritmatika atau perhitungan matematis {penjumlahan, pengurangan, perkalian, pembagian} dan operasi logika {AND, OR, XOR, NOT} terhadap bilangan bulat 8 ataupun 16 bit. Dan mempertimbangkan suatu kondisi untuk pengambilan keputusan yang dibutuhkan pada instruksi-instruksi berikutnya.
b. CU {Control Unit}
Bagian yang mengambil, mengkodekan dan melaksanakan urutan instruksi dari sebuah program yang tersimpan di dalam memori.
 c. RU {Register Unit}.
Bagian yang berfungsi untuk tempat penyimpanan {varibel} bilangan bulat 8 atau 16 bit. Register jumlahnya banyak, masing-masing berfungsi umum dan khusus. Register umum digunakan untuk menyimpan data sementara yangdiperlukan untuk proses penghitungan dan operasi mikrokontroler. Register umum dibutuhkan mengingat pada saat bersamaan mikrokontroler hanya mampu melakukan operasi aritmatika atau logika hanya pada 1 atau 2 operand saja. Sehingga untuk operasi-operasi yang melibatkan banyak varibel harus dimanipulasi dengan menggunakan variable-variabel register umum.
Sedangkan register khusus dibutukhkan untuk fungsi-fungsi khusus, yaitu timer, accumulator dan program counter.   
1.Timer  adalah register khusus yang berfungsi sebagai tempat penyimpanan data penghitungan pulsa. 
2.Accumulator adalah register khusus yang berfungsi sebagai tempat penyimpanan data operand umum proses aritmetika logika. 
3.Program Counter adalah register khusus yang berfungsi sebagai tempat penyimpanan data pencacah/penghitung eksekusi program mikrokontroler.
2. Komponen Memori Mikrokontroler.
            Komponen memori mikrokontroler ada 2 bagian yaitu ROM dan RAM
a. Internal ROM {Read Only Memory}.
ROM adalah jenis memori untuk menyimpan program secara permanen yang tidak dapat diubah atau dihapus {hanya dapat dibaca} dan digunakan untuk menyimpan program utama. Memori ini jenisnya non-volatile memory, program yang tersimpan tidak akan hilang ketika catu dayanya dimatikan.
Memori ROM ada 2 jenis yaitu EPROM {Erasable Programmable Read Only Memori} dan EEPROM {Electrically Erasable Programmable Read Only Memory}. EEPROM dapat menyimpan data secara permanen, tetapi isinya masih bias dihapus secara elektris melalui program.
b. RAM {Random Acces Memory}.
RAM adalah jenis memori yang digunakan untuk menyimpan data dan hasil sementara yang dibuat dan digunakan selama mirkokontroler bekerja. RAM biasanya berisi data-data variable dan register. RAM memproses data yang tersimpan secara acak dan random, isi memori ini akan hilang ketika catu daya dimatikan.

3. Komponen Input Dan Output {I/O} Mikrokontroler.
I/O mikrokontroler yang terdiri dari I/O port serial dan pararel merupakan bagian yang berfungsi untuk mengeluarkan ataupun menginputkan data digital dan sebagai penghubung CPU dengan alat-alat input output seperti sensor/ transduser, aktuator. Bagian I/O juga bisa berfungsi sebagai saluran komunikasi antara sistem CPU dengan sistem luar, biasanya digunakan I/O serial.

4. Komponen Pendukung Mikrokontroler.
Komponen pendukung mikrokontroler terdiri dari bagian-bagian yang mendukung komponen-komponen seperti CPU, RAM dan I/O sehingga mikrokontroler bias bekerja. Bagian-bagian yang terdapat pada komponen pendukung yaitu seperti berikut : clock circuits, stack pointer dan interrupt cicrcuits.
a. Clock Circuits.
Bagian yang memiliki fungsi menyediakan clock bagi seluruh bagian rangkaian, dimana proses kerjanya berjalan melalui sinkronisasi clock dari rangkaian logika sekuensial.
b. Stack Pointer.
Bagian dari RAM penyimpanan dan pengambilan data dilakukan dengan metode khusus. Data yang disimpan dan dibaca tidak dapat dilakukan dengan metode acak, karena data yang masuk kedalam stack pada urutan terakhir adalah data yang pertama kali dibaca kembali.
c. Interrupt Circuits.
Bagian yang memiliki fungsi 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.

B. PRINSIP 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 diisikansebelumnya 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.




3 komentar:

  1. apakah arduino dan mikrokontroler memiliki kesamaan? dan apakah kita bisa membuat arduino dengan versi kita sendiri? terimakasih

    BalasHapus