Docstoc

Mikrokontroler ATMEL

Document Sample
Mikrokontroler ATMEL Powered By Docstoc
					      P. Mikrokontroler   Data Keluarga MCS-51




              TUGAS MATA KULIAH PENGANTAR
                    MIKROKONTROLER




                             DISUSUN OLEH:
                 NAMA        :      MOHAMAD EKO ARI BOWO
                 NIM         :      M3107105
                 KELAS       :      TEKNIK INFORMATIKA B




         PROGRAM STUDI D3 ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
       UNIVERSITAS SEBELAS MARET SURAKARTA
                        2009


                                         M3107105 | Moh. Eko Ari Bowo   0
   P. Mikrokontroler       Data Keluarga MCS-51




A. PENDAHULUAN

     Yang dimaksud dengan mikrokontroler adalah sebuah sistem mikroprosesor
 lengkap yang terkandung didalam sebuah chip yang mempunyai masukan dan
 keluaran serta kendali dengan program yang bisa ditulis dan dihapus dengan cara
 yang khusus. Cara kerja mikrokontroler sebenarnya hanya membaca dan menulis
 data. Sebagai contoh, bayangkan diri kita saat mulai belajar membaca dan
 menulis, ketika kita sudah bisa melakukan hal itu maka kita dapat membaca
 tulisan apapun baik buku, cerpen, artikel dan sebagainya, dan kita juga dapat
 menulis hal-hal sebaliknya. Apabila kita sudah mahir membaca dan menulis data
 maka kita dapat membuat program untuk membuat suatu sistem pengaturan
 otomatis menggunakan mikrokontroler sesuai keinginan kita.
     Mikrokontroler berbeda dari mikroprosesor serba guna yang digunakan di
 dalam sebuah PC, karena sebuah mikrokontroler umumnya telah berisi
 komponen-komponen pendukung, seperti : prosesor, memori, dan I/O. Namun,
 secara analogi mikrokontroler merupakan komputer didalam chip yang digunakan
 untuk mengontrol peralatan elektronik, yang ditekankan untuk efisiensi dan
 efektifitas biaya. Secara harfiahnya juga dapat disebut "pengendali kecil" dimana
 sebuah sistem elektronik yang sebelumnya banyak memerlukan komponen-
 komponen pendukung seperti IC TTL dan CMOS dapat direduksi/diperkecil dan
 akhirnya terpusat serta dikendalikan oleh mikrokontroler ini.
 Dengan penggunaan mikrokontroler ini maka :
 1. Sistem elektronik akan menjadi lebih ringkas.
 2. Tingkat keamanan dan akurasi yang lebih baik.
 3. Rancang bangun sistem elektronik akan lebih cepat karena sebagian besar
   dari sistem adalah perangkat lunak yang mudah dimodifikasi.
 4. Kemudahan      dalam    penggunaannya     untuk    sistem    yang   berbasis
   mikrokontroler.
 5. Pencarian gangguan lebih mudah ditelusuri karena sistemnya yang kompak.
     Namun demikian, tidak sepenuhnya mikrokontroler dapat mereduksi
 komponen ICTTL dan CMOS karena seringkali masih diperlukan untuk aplikasi


                                             M3107105 | Moh. Eko Ari Bowo   1
   P. Mikrokontroler       Data Keluarga MCS-51




 kecepatan tinggi atau menambah jumlah saluran masukan dan keluaran (I/O).
 Beberapa periperal yang langsung dapat dimanfaatkan, misalnya port paralel, port
 serial, komparator, konversi digital ke analog (DAC), konversi analog ke digital
 dan sebagainya hanya menggunakan sistem minimum yang tidak rumit atau
 kompleks.


B. MANFAAT MIKROKONTROLER

     Manfaat sistem mikrokontroler banyak sekali, apabila hanya mendengar
 penjelasan dari teori, maka “ batasnya hanya sampai kepada imajinasi kita ”. Oleh
 karena itu kita harus mempraktekannya. Dengan praktek perlahan kita dapat
 menguasainya, dan menerapkannya ke dalam kehidupan sehari-hari seperti
 mengendalikan suatu perangkat elektronik dengan berbagai sensor dan kondisi
 seperti cahaya, dingin, panas, getaran, lembab dan lain-lain.
     Sekedar contoh sederhana penggunaan mikrokontroler, dapat kita lihat di
 sekitar lingkungan ada toaster, mesin cuci, microwave, magic com, lampu lalu-
 lintas, kemudian di dunia pertanian kita dapat membuat kontrol kelembaban untuk
 budidaya jamur, di dunia perikanan kita dapat mengendalikan suhu air kolam.
 Bahkan kita dapat membuat PABX mini, SMS Gateway, atau ke arah militer kita
 mampu menciptakan radio militer frekuensi hopping (radio komunikasi anti sadap
 dengan lompatan frekuensi 100 kali dalam 1 detik), sistem pemantau cuaca
 menggunakan balon udara, Automatic Vehicel Locator (menggunakan GPS) dan
 sebagainya. Semua itu sekedar contoh, masih banyak lagi yang bisa kita
 kembangkan dengan mikrokontroler.
     Sebagai prospek, arah perkembangan dunia elektronika saat ini adalah ke
 embedded system (sistem tertanam) atau embedded electronic (elektronik
 tertanam) dan salah satunya dengan menggunakan mikrokontroler, jadi apabila
 kita belajar dan menguasai mikrokontroler maka kita sudah berada pada jalur yang
 tepat.




                                              M3107105 | Moh. Eko Ari Bowo   2
    P. Mikrokontroler      Data Keluarga MCS-51




C. PRINSIP KERJA MIKROKONTROLER

  Prinsip kerja mikrokontroler adalah sebagai berikut :
  a. Berdasarkan nilai yang berada pada register Program Counter, mikrokontroler
     mengambil data pada ROM dengan alamat 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.
  b. Instruksi yang diambil tersebut kemudian diolah dan dijalankan oleh
     mikrokontroler. Proses pengerjaan bergantung pada jenis instruksi, dapat
     membaca, mengubah nilai-nilai pada register, RAM, Isi Port, atau melakukan
     pembacaan dan dilanjutkan dengan pengubahan data.




  c. Program Counter telah berubah nilainya. Selanjutnya yang dilakukan
     mikrokontroler adalah mengulang kembali siklus ini pada langkah pertama
     dan demikian seterusnya hingga catudaya dimatikan.
  Pada dasarnya kinerja sistem mikrokontroler sangat bergantung pada urutan
  instruksi yang dijalankannya, yaitu program yang ditulis dalam ROM. Dan jika
  dikaitkan dengan embedded system, mikrokontroler bertugas untuk membagi kerja
  dari sistem yang ditambahkan berdasarkan cara kerja sistem tersebut. Sehingga
  walau telah ditambahkan sistem atau proses yang lain, sistem yang ada
  sebelumnya tetap dapat melakukan proses sebagaimana mestinya seperti yang
  diatur dengan mikrokontroler.




                                              M3107105 | Moh. Eko Ari Bowo   3
    P. Mikrokontroler     Data Keluarga MCS-51




D. ORGANISASI MEMORI

       Mikrokontroler AT89C51 memiliki memori internal program yang terpisah
  dari memori internal data, ruang memori internal program memiliki kapasitas 4
  Kbyte flash EEROM, yaitu alamat 0000H sampai 0FFFH dalam bilangan
  heksadesimal atau alamat 0 sampai 4095 dalam bilangan desimal. Karena alamat
  berkaitan dengan jumlah pin address yang menggunakan sistem biner, maka
  biasanya angka alamat memori menggunakan bilangan biner atau heksadesimal,
  di mana setiap angka heksadesimal mewakili 4-bit angka biner.




                              (a).Memory Program




                                 (b). Memory Data


                                            M3107105 | Moh. Eko Ari Bowo   4
  P. Mikrokontroler      Data Keluarga MCS-51




     Gambar (a) memperlihatkan lokasi ROM internal. Lokasi ini dapat diakses
jika pin EA = 1 atau diberi tegangan Vcc. Jika ukuran program melampaui
  byte,
4Kbyte, maka harus digunakan ROM eksternal yang alamatnya antara 0000h
                  64Kbyte dan pin EA = 0 atau dihubungkan dengan ground.
sampai FFFFh atau 64
                                            memori
Jika digunakan EPROM eksternal, maka alamat memor program sama dengan
alamat memori data, atau dengan kata lain alamat 64 kbyte dipakai bersama oleh
program dan data. Sistem dapat membedakan alamat memori hingga 64 Kbyte,
pengaksesan memori data eksternal dilakukan dengan menggunakan data pointer
melalui instruksi “MOVX”.
     Di samping dapat mengakses RAM eksternal, mikrokontroler memiliki
RAM internal yang pengaksesannya terpisah dengan RAM eksternal. RAM
internal berkapasitas 128 byte ditambah sejumlah SFR (Special Function
                                                     (Special
Register). Gambar (b kiri memperlihatkan RAM internal dan SFR. Kelompok
                   b)          rlihatkan
RAM internal memiliki alamat antara 00 – 7FH sedangkan kelompok SFR
 Special          Register)
(Special Function Register memiliki alamat antara 80H – FFH. RAM internal
dapat diakses secara langsung (direct addressing) maupun t
                                                )        tidak langsung
(indirect addressing) melalui RO dan R1. Sedangkan SFR hanya dapat diakses
                    )
secara langsung dengan menyebutkan nama lokasinya, bukan nomor lokasinya,
                 P0,
misalnya ACC, B, P0, P1 dst. 128 byte RAM internal yang terletak antara 00 –
                          bagian
7FH terbagi atas 3 (tiga) bagi yaitu :




                                         M3107105 | Moh. Eko Ari Bowo
                                                     oh.                5
   P. Mikrokontroler      Data Keluarga MCS-51




 a. Kelompok Register Bank. Berupa 32 byte atau 32 register yang terletak antara
    00h sampai 1Fh. Bagian ini dipecah menjadi 4 register bank yang masing-
    masing terdiri dari 8 register yang diberi nama R0 sampai R7. Masing-masing
    register dapat dialamatkan dengan nama ataupun dengan alamat RAM-nya.
    Bit RS0 dan RS1 pada register PSW di SFR menentukan bank mana yang
    sedang digunakan. Misalnya jika RS0 dan RS1 bernilai 00, maka R2
    menempati lokasi 02H pada register bank pertama, tetapi jika RS0 dan RS1
    bernilai 10, maka R2 menempati lokasi 12H pada register bank ketiga.
 b. Daerah pengalamatan bit (bit addressable) yang terdiri dari 16 byte atau 16
    register dengan alamat antara 20h sampai 2Fh. Setiap bit pada areal ini dapat
    diakses secara terpisah tanpa mengganggu bit lainnya. Pengalamatan byte
    dapat mengunakan alamat register antara 20h sampai 2Fh, sedangkan
    pengalamatan bit dapat dilakukan dengan menuliskan titik setelah alamat
    registernya, misal 20H.7 untuk bit MSB pada register 20H.
 c. Daerah register penggunaan umum (Scratch Pad Area) yang terletak di bagian
    atas RAM internal, yaitu alamat 30h sampai 7FH. Biasanya stack diletakkan
    di area ini.


E. SKEMA REGISTER MIKROKONTROLER

    Skema dari daerah memori yang disebut dengan Special Function Registers
 (SFR). SFR yang ditandai dengan (…) hanya terdapat pada 89C52, tetapi tidak
 terdapat pada 89C51. Tidak semua alamat ditempati, alamat yang kosong tidak
 diimplementasikan pada chip. Apabila melakukan pembacaan pada alamat
 kosong, akan menghasilkan data random, sedangkan penulisan tidak berpengaruh.
    Di dalam setiap operasinya mikrokontroler harus selalu menyertakan register
 sebagai salah satu operand atau tempat data yang akan dilibatkan dalam operasi
 tsb. Register adalah memori kecil berukuran 1 atau 2 byte, 8-bit atau 16-bit.
     Register akan menampung data sebelum diolah, register juga akan
 menampung data hasil olahan sementara sebelum dikembalikan atau dikirim ke
 bus internal atau eksternal. Selain itu, register juga digunakan untuk


                                             M3107105 | Moh. Eko Ari Bowo        6
  P. Mikrokontroler      Data Keluarga MCS-51




mengendalikan operasi I/O device, seperti paralel I/O, serial communication,
Timer dan Interrupt.
Fungsi dari masing-masing register dijelaskan pada bagian berikut.
1. Data Pointer (DPTR)
   DPTR terdiri dari high byte (DPH) dan low byte (DPL). Fungsi utamanya
   adalah sebagai tempat alamat 16 bit. Register ini dapat dimanipulasi sebagai
   sebuah register 16 bit atau 2 buah register 8 bit yang berdiri sendiri. Apabila
   Stack Pointer diinisialisasi pada alamat 07H setelah reset, hal ini
   mengakibatkan stack dimulai pada lokasi 08H.
2. Port 0 - 3
   P0, P1, P2, dan P3 adalah SFR latch dari Port 0, 1, 2, dan 3.
3. Serial Data Buffer
   Serial Data Buffer sebenarnya merupakan 2 register yang terpisah, transmit
   buffer (untuk mengirim data serial) dan receive buffer (untuk menerima data
   serial). Ketika data dipindahkan ke SBUF, maka data akan menuju ke transmit
   buffer di mana data ditampung untuk pengiriman serial. Memindahkan data ke
   SBUF berarti menginisialisasi / memulai transmisi data secara serial.
   Sebaliknya, bila data dipindahkan dari SBUF, data tersebut berasal dari
   receive buffer.
4. Register Timer
   Pasangan register (TH0 & TL0), (TH1 & TL1), dan (TH2 & TL2) adalah
   register 16 bit untuk proses perhitungan Timer / Counter 0, 1, dan 2. Fungsi
   alternatif hanya akan aktif bila bit-bit yang bersesuaian pada port SFR berisi
   '1'. Bila tidak maka output port akan terkunci pada low.
5. Konfigurasi I/O
   Gambar di atas menunjukkan diagram latch dan I/O buffer tiap bit dari Port 0
   sampai Port 3. Port 1, 2, dan 3 mempunyai pull-up internal. Sedangkan Port 0,
   konfigurasi outputnya adalah open drain. Setiap bit I/O ini berdiri sendiri, jadi
   dapat berfungsi sebagai input atau output tanpa tergantung satu sama lain. Port
   0 dan 2 tidak dapat dipakai sebagai I/O bila digunakan sebagai jalur alamat /
   data. Apabila port-port tersebut ingin difungsikan sebagai input, maka bit


                                            M3107105 | Moh. Eko Ari Bowo     7
  P. Mikrokontroler      Data Keluarga MCS-51




   latch harus berisi “1”, yang akan mematikan output driver FET, sehingga pin-
   pin Port 1,2, dan 3 akan “ditarik” ke high oleh pull-up internal, tetapi bila
   diinginkan dapat juga port-port tersebut “ditarik” ke low dengan sumber
   eksternal.
6. Stack Pointer (SP)
   Stack Pointer terdiri dari 8 bit. Alamat SP ditambah / dinaikkan sebelum data
   disimpan pada eksekusi instruksi PUSH dan CALL. SP dapat diletakkan pada
   alamat manapun di on-chip RAM, SP diinisialisasi pada alamat 07H setelah
   reset. Hal ini mengakibatkan stack dimulai pada lokasi 08H.
7. Register Control
   Yaitu register-register yang digunakan untuk mengendalikan kerja I/O device
   internal. Register tersebut antara lain register IP (Interrupt Priority) dan IE
   (Interupt Enable) untuk operasi interupsi, register TMOD (Timer Mode)
   danTCON (Timer Control) untuk operasi Timer atau Counter, register SCON
   untuk operasi komunikasi serial dan register PCON (Power Control) untuk
   pengendalian penggunaan daya listrik prosesor.
8. Struktur dan Cara Kerja Port
   Mikrokontroler mempunyai 4 port bi-directional (Port 0 - Port 3), masing-
   masing terdiri dari 8 bit. Setiap port terdiri dari sebuah latch (Special Function
   Registers P0 sampai P3), sebuah output driver, dan sebuah input buffer.
   Output driver Port 0 dan Port 2, serta input buffer Port 0 digunakan untuk
   mengakses memori eksternal. Untuk aplikasi yang menggunakan memori
   eksternal, maka Port 0 mengeluarkan “low order byte” alamat memori
   eksternal (A0-A7), yang di-multipleks dengan data (1 byte) yang dibaca atau
   ditulis.
   Port 2 mengeluarkan “High Order Byte” alamat memori eksternal (A8-A15)
apabila alamat yang diperlukan sebanyak 16 bit. Bila alamat yang diperlukan
hanya A0-A7, maka output Port 2 sama dengan isi SFR (Special Function
Registers). Semua pin Port 3 mempunyai fungsi alternatif selain sebagai port.
   Port 0 agak berbeda, karena tidak menggunakan pull-up internal. FET pull-up
pada output driver P0 hanya digunakan pada saat port mengeluarkan '1' selama


                                            M3107105 | Moh. Eko Ari Bowo      8
    P. Mikrokontroler        Data Keluarga MCS-51




  akses memori eksternal, selain keadaan ini FET pull-up tidak aktif. Akibatnya bila
  bit-bit P0 berfungsi sebagai output maka bersifat open drain. Penulisan logika '1'
  ke bit latch menyebabkan kedua FET tidak bekerja, sehingga pin dalam keadaan
  mengambang (floating). Pada kondisi ini pin dapat berfungsi sebagai High
  Impedance Input.
      Port 1, 2, dan 3 sering disebut dengan ”quasi-bidirectional” karena
  mempunyai pull-up internal. Saat berfungsi sebagai input maka mereka akan
  'ditarik' ke high dan akan bersifat sebagai sumber arus bila 'ditarik' ke low secara
  eksternal. Port 0 sering disebut sebagai ”true-bidirectional”, karena bila
  dikonfigurasikan sebagai input maka pin-pinnya akan mengambang. Pada saat
  reset semua port latch akan berlogika '1'.


F. SPESIFIKASI MIKROKONTROLER

  Di dunia mikrokontroler, secara teknis hanya ada 2 jenis mikrokontroler yaitu
  RISC dan CISC dan masing-masing mempunyai keturunan / keluarga sendiri-
  sendiri.
  1. RISC kependekan dari Reduced Instruction Set Computer dengan instruksi
      terbatas tapi memiliki fasilitas yang lebih banyak
  2. CISC kependekan dari Complex Instruction Set Computer dengan instruksi
      yang dapat dikatakan lebih lengkap tapi dengan fasilitas secukupnya.
  Jenis mikrokontroler banyak sekali ada keluarga Motorola dengan seri 68xx,
  keluarga MCS51 yang diproduksi Atmel, Dallas, Philip, keluarga PIC dari
  Microchip, Zilog, Renesas. Masing-masing keluarga juga masih terbagi lagi
  dalam beberapa tipe. Sulit sekali untuk menghitung berapa tepatnya jumlah
  mikrokontroler. Berikut beberapa penjelasan mengenai beberapa spesifikasi
  mikrokontroler :

  a. Mikrokontroler MCS-51
             Meskipun termasuk tua, keluarga Mikrokontroler MCS51 adalah keluarga
      mikrokontroler yang terpopuler saat ini. Keluarga ini diawali oleh Intel yang
      mengenalkan IC Mikrokontroler tipe 8051 awal tahun 1980-an. Tipe 8051

                                               M3107105 | Moh. Eko Ari Bowo    9
P. Mikrokontroler    Data Keluarga MCS-51




 termasuk sederhana dan harganya murah sehingga banyak digemari, banyak
 pabrik IC besar lain yang ikut memproduksinya, tentu saja masing-masing
 pabrik menambahkan kemampuan pada mikrokontroler buatannya meskipun
 kesemuanya masih dibuat berdasarkan dasar dari 8051. Sampai kini sudah ada
 lebih 100 macam mikrokontroler keturunan 8051, sehingga terbentuklah
 sebuah “ keluarga besar mikrokontroler ” dan biasa disebut sebagai MCS51.
     Belakangan ini, pabrik IC Atmel ikut menambah anggota keluarga
 MCS51. Atmel merupakan pabrik IC yang sangat menguasai teknologi
 pembuatan Flash PEROM, dan wajar apabila Atmel memasukkan Flash
 PEROM ke dalam mikrokontroler buatannya. Usaha Atmel ini ternyata
 bagaikan menambah “darah segar” bagi keluarga MCS51. Dengan adanya
 Flash PEROM yang harganya murah maka tercapailah impian banyak orang
 untuk membuat alat berbasis mikrokontroler yang sesederhana mungkin dan
 semurah mungkin.
     Produksi mikrokontroler MCS51 Atmel dibagi dua macam, yang berkaki
 40 setara dengan 8051 yang asli, bedanya mikrokontroler Atmel berisikan
 Flash PEROM dengan kapasitas berlainan. AT89C51 mempunyai Flash
 PEROM dengan kapasitas 2 KiloByte, AT89C52 4 Kilo Byte, AT89C53 12
 Kilo Byte, AT89C55 20 Kilo Byte dan AT89C8252 berisikan 8 Kilo Byte
 Flash PEROM dan 2 Kilo Byte EEPROM.
     Yang berkaki 20 adalah MCS51 yang disederhanakan, penyederhanaan
 dilakukan dengan cara mengurangi jalur untuk input/output paralel,
 kemampuan     yang lain    sama sekali    tidak   mengalami   pengurangan.
 Penyederhanaan ini dimaksudkan untuk membentuk mikrokontroler yang
 bentuk fisiknya sekecil mungkin tapi mempunyai kemampuan sama. Atmel
 memproduksi 3 buah mikrokontroler ‘mini’ ini, masing-masing adalah
 AT89C1051 dengan kapasitas Flash PEROM 1 Kilo Byte, AT89C2051 2 Kilo
 Byte dan AT89C4051 4 KiloByte. Ketiga mikrokontroler ini secara umum
 disebut sebagai AT89Cx051.
 Notasi ”C” pada tipe sebuah mikrokontroler produksi Atmel menandakan
 bahwa chip tersebut dalam pemrogramannya harus menggunakan rangkaian


                                       M3107105 | Moh. Eko Ari Bowo   10
 P. Mikrokontroler    Data Keluarga MCS-51




  terpisah yang biasa disebut dengan ”downloader”. Sehingga apabila ingin
  melakukan     pemrograman     ulang     sebuah    chip    AT89Cxx    harus
  mengeluarkannya (mencabut) dari rangkaian aplikasi.

b. Mikrokontroler AT89S51
      Mikrokontroller 8 bit dengan 4 KByte ISP (In System Programming)
  mikrokontroler saat ini tidak asing lagi dalam dunia elektronika, karena
  hampir semua peralatan elektronik dewasa ini menggunakan perangkat ini.
  Mikrokontroler merupakan pengendali utama dalam peralatan elektronik saat
  ini, maka suatu hal yang penting bagi mereka yang berkecimpung dalam
  dunia elektronika untuk mempelajari sistem mikrokontroler.
      Mikrokontroler yang dibahas AT89S51 adalah mikrokontroler buatan
  ATMEL yang mudah ditemui di pasaran di Indonesia, yaitu dari keluarga
  MCS-51.     AT89S51    dan    AT89S52     mempunyai      kemampuan   serial
  downloading atau lebih dikenal dengan istilah In System Programming (ISP)
  sehingga mikrokontroler langsung dapat diprogram pada rangkaiannya tanpa
  harus mencabut IC untuk diprogram, programmer ISP dapat dibuat
  menggunakan beberapa resistor via paralel port komputer sehingga bagi
  mereka yang belum memiliki programmer dapat tetap bereskperimen
  menggunakan mikrokontroler ini dengan biaya yang relatif murah.
  Berikut adalah diagram blok dari AT89S51 :




                                        M3107105 | Moh. Eko Ari Bowo   11
P. Mikrokontroler    Data Keluarga MCS-51




     Memori internal 89S51 terdiri dari 3 bagian yaitu ROM, RAM dan SFR.
 ROM / Read Only Memory adalah memori tempat menyimpan program /
 source code. Sifat ROM adalah non-volatile, data / program tidak akan hilang
 walaupun tegangan supply tidak ada. Kapasitas ROM tergantung dari tipe
 mikrokontroler. Untuk AT89S51 kapasitas ROM adalah 4 KByte. ROM pada
 AT89S51 menempati address 0000 s/d 0FFF. RAM / Random Access Memory
 adalah memori tempat menyimpan data sementara. Sifat RAM adalah volatile,
 data akan hilang jika tegangan supply tidak ada. Kapasitas RAM tergantung
 pada tipe mikrokontroler. Pada AT89S51 RAM dibagi menjadi 2 yaitu :
 a) Lower 128 byte yang menempati address 00 s/d 7F. RAM ini dapat
    diakses menggunakan pengalamatan langsung (direct), maupun tidak
    langsung (indirect). Contohnya :
    Direct → mov 30h,#120 ; Pindahkan data 120 ke RAM pada address 30h.
    Indirect → mov R0,#30h ; Isi Register 0 dengan 30h.
    Mov @R0,#120 ; Pindahkan data 120 ke RAM pada address sesuai isi R0.
 b) Upper 128 byte yang menempati address 80 s/d FF. Address ini sama
    dengan address SFR meskpuni secara fisik benar berbeda. RAM ini hanya
    dapat diakses dengan pengalamatan tidak langsung.




                                       M3107105 | Moh. Eko Ari Bowo    12
P. Mikrokontroler     Data Keluarga MCS-51




 SFR / Special Function Register adalah register dengan fungsi tertentu.
 Misalnya, register TMOD dan TCON adalah timer control register yang
 berfungsi mengatur fasilitas timer mikrokontroler. SFR pada AT89S51
 menempati address 80 s/d FF.
 Skema memori internal 89S51.




 Gambar diatas adalah peta memori internal 89S51 yang terdiri dari RAM,
 SFR, dan ROM. Tampak ada kesamaan address antara RAM, SFR, dan ROM
 yaitu pada address 00 s/d FF. Berdasarkan hal ini, biasanya source code ditulis
                                      ROM.
 setelah address 00FF yaitu 0100 pada ROM. Hal ini dimaksudkan agar data
 RAM dan SFR tidak terisi oleh byte source code.
                     konfigurasi pin AT89S51.
 Di bawah ini adalah k




                                         M3107105 | Moh. Eko Ari Bowo
                                                     oh.                 13
  P. Mikrokontroler     Data Keluarga MCS-51




Konfigurasi pin AT89S51 dijelaskan sebagai berikut.
 VCC          Tegangan supply +5V.
 GND          Ground.
 Port 0       Merupakan port paralel 8 bit dua arah (bi-directional) yang dapat
              digunakan untuk berbagai keperluan. Port 0 juga me-multipleks
              alamat dan data jika digunakan untuk mengakses memori eksternal.
 Port 1       Merupakan port paralel 8 bit bi-directional dengan internal pull-up.
              Port 1 digunakan dalam proses pemrograman (In System
              Programming). P1.5 MOSI; P1.6 MISO; dan P1.7 SCK.
 Port 2       Merupakan port paralel 8 bit bi-directional dengan internal pull-up.
              Port 2 akan mengirim byte alamat jika digunakan untuk mengakses
              memori eksternal.
 Port 3       Port 3 merupakan port paralel 8 bit bi-directional dengan internal
              pull-up. Port 3 juga bisa difungsikan untuk keperluan khusus yaitu :
              P3.0 RXD (Receive Data)
              P3.1 TXD (Transmit Data)
              P3.2 INT0 (Interrupt 0)
              P3.3 INT1 (Interrupt 1)
              P3.4 T0 (Timer 0)
              P3.5 T1 (Timer 1)
              P3.6 WR (Write Strobe)
              P3.7 RD (Read Strobe)
 RST          Pulsa dari low ke high akan mereset mikrokontroler.
 ALE/PROG Address Latch Enable, digunakan untuk menahan alamat memori
              eksternal selama pelaksanaan instruksi.
 PSEN         Program    Store    Enable,    merupakan    sinyal    kendali    yang
              memperbolehkan program memori eksternal masuk ke dalam bus
              selama proses pengambilan instruksi.
 EA/VPP       Jika EA=1 maka mikrokontroler akan melaksanakan instruksi dari
              ROM internal dan jika EA=0 maka mikrokontroler akan



                                            M3107105 | Moh. Eko Ari Bowo      14
 P. Mikrokontroler      Data Keluarga MCS-51




             melaksanakan instruksi dari ROM eksternal.
XTAL1        Input ke rangkaian osilator internal.
XTAL2        Output dari rangkaian osilator internal.


     Contohnya pada :
  a. Pengendali Motor dengan Remote Sony
     Fungsi aplikasi adalah mengatur arah putaran motor DC dengan
     menggunakan remote control Sony. Menggunakan Small System
     AT892051.
  b. Sensor Warna TCS230
     TCS230 adalah konverter warna cahaya ke frekuensi. Ada dua komponen
     utama pembentuk IC ini, yaitu photodioda dan pengkonversi arus ke
     frekuensi.
  c. Jam Digital dengan Bahasa C
     Modul DST-51 sebagai central pemroses, LCD Hitachi digunakan untuk
     menampilkan data waktu yang berupa detik, menit, jam, hari, tanggal,
     bulan dan tahun. Modul RTC-1287 sebagai sumber data waktu yang akan
     ditampilkan, dan Key-44 sebagai input untuk menset waktu.


c. Mikrokontroler AT89C51

      AT89C51 merupakan prosesor 8-bit dengan low power supply dan
  performa tinggi yang terdiri dari CMOS dengan Flash Programmable and
  Erasable Read Only Memory (PEROM) sebesar 4 Kbyte di dalamnya. Alat ini
  dibuat menggunakan teknologi tinggi non-volatile berdensitas tinggi dari
  ATMEL yang kompatibel dengan keluarga MCS-51 buatan Intel yang
  merupakan standar industri. Dengan menggunakan flash memori, program
  dapat diisi dan dihapus secara elektrik, yaitu dengan memberikan kondisi-
  kondisi tertentu (high / low) pada pin-pinnya sesuai dengan konfigurasi untuk
  memberi input program atau menghapus. Cara ini lebih praktis dibandingkan




                                          M3107105 | Moh. Eko Ari Bowo   15
P. Mikrokontroler      Data Keluarga MCS-51




 dengan menggunakan EPROM dimana penghapusan program atau datanya
 menggunakan sinar ultraviolet.
 Fasilitas yang tersedia pada AT89C51 antara lain :
 •   4 Kb Flash EEROM dengan kemampuan hingga 1000 kali tulis-hapus.
 •   128 x 8-bit internal RAM.
 •   32-bit atau jalur Input/Output.
 •   2 (dua) buah 16-bit Timer / Counter.
 •   6 (enam) buah sumber interupsi.
 •   Serial Communication Interface.
 •   Kompatibel dengan prosesor MCS-51 buatan Intel Corp.
 •   Clock Operation antara 1 sampai 24 MHz.
 Mikrokontroler 89C51 merupakan mikrokomputer CMOS 8 bit dengan 4
 Kbytes Flash Programmable. Arsitektur 89C51 ditunjukkan pada gambar di
 bawah ini.




                                            M3107105 | Moh. Eko Ari Bowo   16
    P. Mikrokontroler      Data Keluarga MCS-51




G. PEMROGRAMAN MIKROKONTROLER MCS-51

      Program pengendali mikrokontroler disusun dari kumpulan instruksi dan
  instruksi tersebut setara dengan kalimat perintah bahasa manusia yang hanya
  terdiri atas predikat dan objek. Dengan demikian, tahap pertama pembuatan
  program pengendali mikrokontroler dimulai dengan pengenalan dan pemahaman
  predikat (kata kerja) dan objek apa saja yang dimiliki mikrokontroler.
      Objek dalam pemrograman mikrokontroler adalah data yang tersimpan di
  dalam memori, register dan input / output. Sedangkan ‘kata kerja’ yang dikenal
  pun secara umum dikelompokkan menjadi perintah untuk perpindahan data,
  aritmatik, operasi logika, pengaturan alur program dan beberapa hal khusus.
  Kombinasi dari kata kerja dan objek itulah yang membentuk perintah pengatur
  kerja mikrokontroller. Intruksi MOV A,$7F merupakan contoh sebuah intruksi
  dasar yang sangat spesifik, MOV merupakan ‘kata kerja’ yang memerintahkan
  peng-copy-an data, merupakan predikat dalam kalimat perintah ini. Sedangkan
  objeknya adalah data yang di-copy-kan, dalam hal ini adalah data yang ada di
  dalam memori nomor $7F di-copy-kan ke Akumulator A.


H. LITERATUR

  1. http://www.elektronika-elektronika.blogspot.com.
  2. http://www.innovativeelectronics.com.
  3. http://www.eepis-its.edu.
  4. http://www.sttn-batan.ac.id.




                                              M3107105 | Moh. Eko Ari Bowo   17