Wednesday, November 2, 2016

Penjelasan Mikrokontroler/Microprosesor, Fungsi, Beserta Prinsip Kerjanya

Mikrokontroler merupakan single-chip mikrokomputer yang berfungsi sebagai kendali dan otomatisasi mesin dan proses. Mikrokontroler memiliki central processing unit (CPU), memori, port input/output (I/O), pewaktu dan pencacah, pengkonversi analog ke digital (ADC), pengkonversi digital ke analog (DAC), port serial, interupsi logika, untaian osilator dan masih banyak lagi fitur-fitur lainnya yang tedapat dalam sebuah blok chip tersebut. Sebagai catatan, fitur-fitur dari mikrokontroler bisa beraneka ragam    berdasarkan    keluaran    pabrikan    dan    serinya.    Semua    fitur-fitur yang    sudah disebutkan tersebut terintegrasi hanya pada sebuah Integrated Circuit (IC). Banyak keuntungan yang diperoleh dari penggunaan mikrokontroler, diantaranya dapat mengurangi ukuran board cicuit kendali, konsumsi power yang lebih rendah, lebih tahan uji dan lebih mudah terintegrasi dengan desain aplikasi elektronik lainnya. Penggunaan mikrokontroler tidak hanya mengurangi ongkos otomatisasi, tetapi juga  menyediakan  fleksibilitas  yang  lebih  tinggi.  Desainer  mikrokontroler  telah  menghilangkan periperal eksternal seperti ADC/DAC, dan juga lebih mengkonsentrasikan kepada aplikasi dan aspek development perangkat. Mikrokontroler dapat diprogram untuk membuat sistem menjadi cerdas. Halini sangat memungkinkan karena mikrokontroler memiliki memori dan pemrosesan data yang mampumenanganinya.  Beberapa  mikrokontroler  yang  biasa  digunakan  adalah  Intel  MCS-51,  MCS-96, Motorola  keluarga 68HC12,  Microchip's  peripheral  interface controller (PIC) keluarga16CXX, 17CXX dsb.


1. Mikrokontroler/Microprosesor

Kata mikroprosesor dalam pengertian yang lebih luas berarti hanya sebuah CPU. Untuk membentuk sebuah board   mikroprosesor   yang   lengkap   blok-blok fungsional  seperti  memori,  dan  peripheral  lainnya harus dihubungkan secara eksternal ke sebuah chip mikroprosesor. Sistem yang dibangun dengan cara ini disebut sebagai 'Single-Board Microcomputer'. Contoh mikroprosesor adalah 8085, 8086 dan 80486. Seperti   yang   telah   didiskusikan   pada   bagian sebelumnya,  jika  melihat  kebutuhan  desain  dari otomatisasi kita memerlukan sebuah perangkat yang mana semua blok-blok fungsional tadi terdapat dalam sebuah IC. Oleh karena itu konsep 'single-chip' mikrokomputer  menjadi  kenyataan,  dan single-chip mikrokomputer  ini  adalah 'Mikrokontroler'. Contoh-contoh  dari  mikrokontroler  adalah  Intel  MCS-51,  keluarga  PIC  dari  Microchip,  Atmel 89CXX, 89CXX51.

Mikrokontroler dapat diprogram dan memilliki blok-blok fungsional yang sesuai jika dipadukan dengan kebutuhan desain elektronik yang lebih umum. Salah satu kelas penting lain dari mikroprosesor adalah 'Bit-Slice Processor'. Istilah bit-slice prosesor berarti bahwa prosesor dapat diinterkoneksikan kedalam bentuk potongan-potongan prosesor yang lebar wordnya dapat ditentukan. Bit-slice prosesor terdiri dari 4 atau 8 bit ALU, register, dan jalur kendali. Jalur kendali terkoneksi pada setiap prosesor-prosesor dan semua prosesor tersebut dapat melakukan  operasi  yang sama.  Contoh bit-slice prosesor  adalah  AMD  seri 2900.  Desain bit- slice prosesor  memilki  beberapa  keuntungan.  Keuntungan  yang  pertama  adalah  ALU  dapat digabungkan untuk membentuk komputer yang bisa mengelola data yang cukup besar dalam satu waktu. Keuntungan desain bit-slice prosesor lainnya adalah dapat  menggunakan  teknologi  chip  bipolar  yang  sangat cepat.   Lebih   jauh   lagi,   desain bit-slicememungkinkan penggunanya membuat set intruksi sendiri untuk aplikasiaplikasi yang mereka ciptakan.

2. Sejarah Mikrokontroler/Mikroprosesor 

Semenjak kelahiran mikroprosesor, banyak mikroprosesor/mikrokontroler 4, 8, 16, dan 32 bit yang dikembangkan dan bermunculan di pasaran. Intel 4004 adalah 4-bit prosesor pertama yang muncul pada tahun 1971. Intel 4004 memiliki kapasitas 8-bit instruksi dan 4-bit proses data, memori eksternal terpisah untuk program (4K) dan data (1K). Ada 46 instruksi yang tereksekusi dalam satu clock (740 kHz). Lalu selama tahun 1972 intel mengembangkan 4040 yang merupakan versi advance dari 4004. 4040 memiliki 14 instruksi lebih banyak dengan 8K memori program dan juga sudah memiliki kemampuan interupsi.

Di tahun 1974 Texas Instrument mengenalkan mikrokontroler pertama TMS 1000. TMS 100 memiliki on-chip RAM, ROM dan I/O. Lalu di tahun 1974 Intel memperkenalkan 8080 yang merupakan versi advancedari 8008 yang telah diluncurkan sebelumnya di tahun 1972. Yang paling populer di tahun 1976 Intel mengembangkan 8085. Seri ini dapat beorperasi pada +5V dan frekuensi 3 MHz. Di tahun yang sama Zilog Z-80 muncul dengan kemampuan lebih baik dari 8080. Z80 beoperasi pada frekuensi 2,5 MHz dan frekuensi dalam CMOS (Complementary Metal Oxide Semiconductor) 10 MHz. Seketika setalah Intel muncul dengan 8080 di tahun 1975, Motorola memperkenalkan 6800, lalu diikuti dengan 6502 dan 6809. Berikutnya tahun 1976 Intel mengembangkan 8084 yang merupakan keluarga MCS-48. Seri ini sudah memungkinkan storage data tersimpan on-chip, tetapi code program masih tersimpan pada memori program eksternal. Tidak lama berselang dari itu MCS-48 tergantikan dengan mikrokontroler keluarga MCS-51 di tahun 1980. Intel MCS-51 menggunakan 2-byte instruksi yang lebih fleksibel, tersedia on-chip memori program (RAM/ROM/EPROM) dan memori data yang sama besar, 128 byte. Dan dapat pula terkoneksikan dengan memori eksternal. Di tahun 1982 Motorola memperkenalkan memperkenalkan mikrokontroler 6805. 

Pada tahun 1975 peripheral interface controller (PIC) terbentuk di Universitas Havard. Keluarga mikrokontroler PIC mulai dikenalkan pada tahun 1985 oleh Microchip. PIC menggunakan arsitektur Havard dan telah memiliki Reduce Intruction Set. Di tahun 1978 Intel mengmbangkan 8086 yang merupakan prosesor 16-bit. Seiring dengan ini Motorola meluncurkan mikroprosesor 16-bit 68000, sedangkan Zilog meluncurkan 16-bit mikroprosesor Z8000. Pada juni 1997, mikrokontroler ATMEL 8-bit AVR dikenalkan ke pasar. dan hari ini telah banyak kluarga dari mikrokontroler yang bermunculan dari berbagai macam sumber dan berbagai macam versi.   

3. 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 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.  Fungsi Setiap Bagian Mikrokontroler
  • 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 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.


EmoticonEmoticon