Hai! Selamat datang, Dalam kesempatan kali ini saya ingin memberikan kamu penjelasan tentang mikrokontroler. Mikrokontroler adalah suatu unit yang dapat diprogram cara kerjanya, sehingga dapat dipergunakan untuk keperluan yang berbeda. Pada masa sekarang mikrokontroler banyak digunakan sebagai pengontrol pada peralatan-peralatan mulai dari mainan/hobie, peralatan rumah tangga, sampai kontrol pada peralatan industri. Disini saya akan menjelasakan salah satu jenis mikrokontroler yaitu AT89S51, saya akan menjelaskannya secara rinci dari, pengertian, struktur, Konfigurasi PIN, dan lainnya.
A. Mikrokontroler AT89S51
Ada beberapa vendor yang membuat Mikrokontroler diantarannya adalah Microchip, Atmel, Philips, Intel, Wndbond, Xemics dan yang lainnya. Dari beberapa vendor tersebut, Mikrokontroler yang paling sering dipakai dan sangat popular adalah mikrokntroler dari Atmel. Ada banyak jenis mikrokontroler yang termasuk kedalam Atmel yaitu, Keluarga ATtiny, Keluarga AT89sxx, Keluarga ATmega dan AT86RFxx. Ada beberapa perbedaan dari masing-masing keluarga kelompok mikrokontroler ini yaitu, masing-masing kelompok adalah berbeda Memorinya, Peripheralnya, dan Juga beda Fungsinya. Tetapi dari sedi arsitektur dan instruksi yang digunakan, mereka bisa dikatan hamper sejenis atau sama.
Mikrokontroler AT89S51 merupakan mikrokontroler keluaran Atmel dengan berkapasitas 4K (4000) byte flash PEROM (Programmable and Erasable Read Only Memory), AT89S51 adalah memori dengan teknologi monvolatile memory, isi memori tersebut dapat diisi ulang ataupun dihapus berkali-kali. Memori ini biasa digunakan untuk menyimpan pertintah berstandar kode MCS-51 sehingga memungkinkan mikrokontroler ini untuk bekerja dalam mode single chip operation (mode operasi keeping tunggal) yang tidak memerlukan external memori untuk menyimpan source kode tersebut.
B. Kelebihan Mikrokontroler AT89S51
Mikrokontroler AT89S51 merupakan versi terbaru dari keluaran ATMEL, dimana sebelumnya ada seri AT89c51 yang telah popular dan banyak digunakan. AT89S51 adalah mikrokontroler berteknologi nonvolatile kerapatan tinggi dari atmel yang kompitibel dengan mikrokontroler standar industi MCS-51 baik pin kaki IC maupun set perintahnya serta harganya yang cukup murah.
C. Diagram Struktur Mikrokontroler AT89S51
- 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.
D. Konfigurasi Kaki/Pin Mikrokontroler AT89S51
Pin adalah kaki fisik dari sebuah IC mikrokontroler AT89S51 yang memiliki 40 buah pin dengan fungsi yang berbeda-beda. Berikut adalah gambar beserta Fungsi dan penjelasannya.
Fungsi setiap pin adalah sebagai berikut:
- Pin 1 - 8, Port 1 (P1.0 sampai dengan P1.7), merupakan port input/output delapan bit 8 dua arah dengan internal pull-up.
- P1.5 (MOSI), P1.6 (MISO) dan P1.7 (SCK) memiliki fungsi yang khusus dalam komunikasi serial multiprosesor, dan pada pengisian program mikrokontroler dengan ISP (In System Programming)
- Pin 9, digunakan untuk memberikan system reset pada Mikrokontroler, rangkaian reset
- Pin 10 - 17, Port 3 (P3.1 sampai dengan P3.7), merupakan port input/output delapan bit 8 dua arah dengan internal pull-up. Setiap pin pada Port 3 ini memiliki fungsi khusus yang langsung berhubungan dengan hardware, fungsi tersebut adalah sebagai berikut:
- P3.0 : RXD, port input/penerimaan data pada komunikasi serial
- P3.1 : TXD, port output/pengiriman data pada komunikasi serial
- P3.2 : (INT0), input interupsi eksternal channel 0 (active low) P3.3 : (INT1), input interupsi eksternal channel 1 (active low)
- P3.4 : T0, input clock ekternal untuk timer 0
- P3.5 : T1, input clock ekternal untuk timer 1
- P3.6 : (WR), merupakan saluran untuk kendali penulisan (active low), saat mikrokontroler akan menulis data ke memori/device luar
- P3.7 : (RD), merupakan saluran untuk kendali pembacaan (active low), saat mikrokontroler akan membaca data dari memori/device luar
- Pin 18, XTAL 2
- Pin 19, XTAL 1, XTAL 1 dan XTAL 2 merupakan masukan untuk rangkaian osilator internal.
- Pin 20, GND, masukan catu daya 0 Volt atau Ground
- Pin 21 - 28, merupakan port input/output delapan bit 8 dua arah dengan internal pull-up. Juga dapat difungsikan untuk jalur alamat byte tinggi (A8 sampai dengan A15) pada penggunaan memori luar.
- Pin 29, (PSEN), Program Strore Enable (active low), sinyal pengontrol yang diberfungsi untuk membaca program dari memori eksternal.
- Pin 30, ALE atau (PROG) active low, address latch enable, berfungsi menahan sementara alamat byte rendah pada proses pengalamatan ke memori eksternal
- Pin 31, (EA) atau VPP, merupakan pin yang berfungsi untuk memilih program untuk menjalankan mikrokontroler, jika EA = 0 atau di-ground-kan maka akan digunakan program pada memori eksternal, jika EA = 1, maka akan digunakan program pada on chip flash.
- Pin 32 - 39, Port 0 (P0.1 sampai dengan P0.7), merupakan port input/output delapan bit 8 dua arah tanpa internal pull-up, sehingga dalam aplikasi harus ditambahkan resistor pull-up eksternal pada masing-masing pin, resistor pull up bernilai 4.7K Ohm terpasang langsung ke VCC
- Pin 40, VCC, catu daya +5 Volt DC
E. Prinsip Kerja Dari Mikrokontroler AT89S51
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.
EmoticonEmoticon