Rabu, 04 Mei 2016

Mikrokontroller

Mikrokontroler MCS51  
Konsep Dasar  Mikrokontroler

1.1 Struktur Mikrokontroler




Masing-masing  bagian  tersebut  saling  dihubungkan  melalui  internal  bus umumnya terdiri dari 3 bus yaitu address bus, data bus, dan control bus.

Masing-masing bagian memiliki fungsi-fungsi :

  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
Mikrokontroler MCS51  2 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  aritmetik  atau  logik  hanya  pada satu  atau  dua operand saja. Sehingga untuk operasi-operasi yang melibatkan banyak
variabel  harus  dimanipulasi  dengan  menggunakan  variabel-variabel register umum.

  Accumulator :
Merupakan salah satu register khusus yang berfungsi sebagai operand umum proses aritmetika dan logika.

  Program Counter :
Merupakan  salah  satu  register  khusus  yang  berfungsi  sebagai pencacah/penghitung eksekusi program mikrokontroler.

  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.
  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.

  Internal ROM (Read Only Memory)  :
Merupakan  memori  penyimpan  data  yang  isinya  tidak  dapat  diubah atau  dihapus  (hanya  dapat dibaca).  ROM  biasanya  diisi  dengan Mikrokontroler MCS51  3 program  untuk  menjalankan mikrokontroler  segera  setelah power dinyalakan,  dan  berisi  data-data  konstanta  yang  diperlukan oleh program. Isi ROM tidak dapat hilang walaupun power dimatikan.

  Internal RAM (Random Access Memory)  :
Merupakan  memori  penyimpan  data  yang  isinya  dapat  diubah  ataudihapus.  RAM  biasanya berisi  data-data  variabel  dan  register.  Data yang  tersimpan  pada  RAM  bersifat  hilang  jika  catu daya  yang terhubung padanya dimatikan.

  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).

  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.

  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 Mikrokontroler MCS51  4 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.

1.2. Cara Kerja Mikrokontroler

Prinsip kerja  mikrokontroler adalah sebagai berikut :
1.  Berdasarkan  nilai  yang  berada  pada  register  Program  Counter, mikrokontroler  mengambil  data  pada  ROM  dengan  address sebagaimana  nilai  yang  tertera  pada Program  Counter.  Selanjutnya Program  Counter ditambah  nilainya  dengan  1  (increment)  secara otomatis.  Data  yang diambil tersebut adalah 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.

Mikrokontroler MCS51  5
Dari  pengertian  di  atas  dapat  disimpulkan  bahwa  pada  dasarnya  unjuk kerja  mikrokontroler  sangatlah  bergantung  pada  urutan  instruksi  yang dijalankannya, yaitu program yang ditulis di ROM.

          Dengan  membuat  program  yang  bermacam-macam,  maka  tentunya mikrokontroler  dapat  mengerjakan  proses  yang  bermacam-macam  pula. Fasilitas-fasilitas  yang  ada  misalnya timer/counter,  port  I/O,  serial  port, Analog  to  Digital  Converter (ADC)  dapat  dimanfaatkan  oleh  program untuk  menghasilkan  proses  yang  diinginkan.    Misalnya  saja  ADC dipergunakan  oleh  sebuah  mikrokontroler  pengendali  alat  ukur  digital untuk  mengukur  tegangan  sinyal  input.  kemudian  hasil  pembacaan  ADC diolah untuk kemudian dikirimkan ke sebuah display yang terhubung pada port  I/O,  menampilkan  hasil  pembacaan  yang  telah  diolah.  Proses pengendalian  ADC,  pemberian  sinyal-sinyal  yang  tepat  pada  display, kesemuanya  dikerjakan  secara  berurutan  pada  program  yang  ditulis  di ROM. Penulisan  program  mikrokontroler  pada  umumnya  adalah  menggunakan bahasa  assembly  untuk  mikrokontroler  yang  bersangkutan  (setiapmikrokontroler  memiliki  instruksi  bahasa  assembly  yang  berlainan).

           Kemudian  dengan  bantuan  sebuah  komputer,  bahasa  assembly  tersebut diubah  menjadi  bahasa  mesin  mikrokontroler,  dan  disalin  ke  dalam  ROM mikrokontroler. Pada buku ini akan dibahas mikrokontroler dari keluarga MCS-51, dengan beberapa  contoh  aplikasi  sederhana.  Selanjutnya  dari  pengertian  yang didapat,  diharapkan  pembaca  dapat  mengembangkan  sendiri  aplikasi-aplikasi lain sebagaimana yang diinginkan.

Tidak ada komentar:

Posting Komentar