Mikrokontroler adalah
suatu chip berupa IC (Integrated Circuit) yang dapat menerima sinyal input,
mengolahnya dan memberikan sinyal output sesuai dengan program yang diisikan ke
dalamnya. Sinyal input mikrokontroler berasal dari sensor yang merupakan informasi
dari lingkungan sedangkan sinyal output ditujukan kepada aktuator yang dapat
memberikan efek ke lingkungan. Jadi secara sederhana mikrokontroler dapat
diibaratkan sebagai otak dari suatu perangkat/produk yang mempu berinteraksi
dengan lingkungan sekitarnya.
Mikrokontroler pada dasarnya adalah komputer dalam satu chip, yang di dalamnya terdapat mikroprosesor, memori, jalur Input/Output (I/O) dan perangkat pelengkap lainnya. Kecepatan pengolahan data pada mikrokontroler lebih rendah jika dibandingkan dengan PC. Pada PC kecepatan mikroprosesor yang digunakan saat ini telah mencapai orde GHz, sedangkan kecepatan operasi mikrokontroler pada umumnya berkisar antara 1 – 16 MHz. Begitu juga kapasitas RAM dan ROM pada PC yang bisa mencapai orde Gbyte, dibandingkan dengan mikrokontroler yang hanya berkisar pada orde byte/Kbyte.
Mikrokontroler pada dasarnya adalah komputer dalam satu chip, yang di dalamnya terdapat mikroprosesor, memori, jalur Input/Output (I/O) dan perangkat pelengkap lainnya. Kecepatan pengolahan data pada mikrokontroler lebih rendah jika dibandingkan dengan PC. Pada PC kecepatan mikroprosesor yang digunakan saat ini telah mencapai orde GHz, sedangkan kecepatan operasi mikrokontroler pada umumnya berkisar antara 1 – 16 MHz. Begitu juga kapasitas RAM dan ROM pada PC yang bisa mencapai orde Gbyte, dibandingkan dengan mikrokontroler yang hanya berkisar pada orde byte/Kbyte.
Meskipun kecepatan
pengolahan data dan kapasitas memori pada mikrokontroler jauh lebih kecil jika
dibandingkan dengan komputer personal, namun kemampuan mikrokontroler sudah
cukup untuk dapat digunakan pada banyak aplikasi terutama karena ukurannya yang
kompak. Mikrokontroler sering digunakan pada sistem yang tidak terlalu kompleks
dan tidak memerlukan kemampuan komputasi yang tinggi.
Sistem yang menggunakan
mikrokontroler sering disebut sebagai embedded system atau dedicated system.
Embeded system adalah sistem pengendali yang tertanam pada suatu produk,
sedangkan dedicated system adalah sistem pengendali yang dimaksudkan hanya
untuk suatu fungsi tertentu. Sebagai contoh printer adalah suatu embedded
system karena di dalamnya terdapat mikrokontroler sebagai pengendali dan juga
dedicated system karena fungsi pengendali tersebut berfungsi hanya untuk
menerima data dan mencetaknya. Hal ini berbeda dengan suatu PC yang dapat
digunakan untuk berbagai macam keperluan, sehingga mikroprosesor pada PC sering
disebut sebagai general purpose microprocessor (mikroprosesor serba guna). Pada
PC berbagai macam software yang disimpan pada media penyimpanan dapat
dijalankan, tidak seperti mikrokontroler hanya terdapat satu software aplikasi.
Penggunaan
mikrokontroler antara lain terdapat pada bidang-bidang berikut ini.
Otomotif : Engine
Control Unit, Air Bag, fuel control, Antilock Braking System, sistem pengaman
alarm, transmisi automatik, hiburan, pengkondisi udara, speedometer dan
odometer, navigasi, suspensi aktif
perlengkapan rumah
tangga dan perkantoran : sistem pengaman alarm, remote control, mesin cuci,
microwave, pengkondisi udara, timbangan digital, mesin foto kopi, printer,
mouse.
pengendali peralatan di
industri.
robotika.
Saat ini mikrokontroler
8 bit masih menjadi jenis mikrokontroler yang paling populer dan paling banyak
digunakan. Maksud dari mikrokontroler 8 bit adalah data yang dapat diproses
dalam satu waktu adalah 8 bit, jika data yang diproses lebih besar dari 8 bit
maka akan dibagi menjadi beberapa bagian data yang masing-masing terdiri dari 8
bit. Contoh mikrokontroler 8 bit antara lain keluarga Motorolla 68HC05/11,
Intel 8051, Microchip PIC 16, dan yang akhir-akhir ini mulai populer keluarga
Atmel AVR. Selain yang telah disebutkan di atas terdapat juga beberapa seri
mikrokontroler lain yang cukup dikenal antara lain Basic Stamp dari Parallax
(banyak digunakan untuk pembelajaran mikrokontroler) dan HD64180 dari Hitachi
(sebagai pengendali LCD). Masing-masing mikrokontroler mempunyai cara dan
bahasa pemrograman yang berbeda, sehingga program untuk suatu jenis
mikrokontroler tidak dapat dijalankan pada jenis mikrokontroler lain. Untuk
memilih jenis mikrokontroler yang cocok dengan aplikasi yang dibuat terdapat
tiga kriteria yaitu
Dapat memenuhi
kebutuhan secara efektif & efisien. Hal ini menyangkut kecepatan,
kemasan/packaging, konsumsi daya, jumlah RAM dan ROM, jumlah I/O dan timer,
harga per unit
Bahasa pemrograman yang
tersedia
Kemudahan dalam
mendapatkannya
Jenis - Jenis Mikrokontroler Populer
a). AVR
Mikrokonktroler Alv and Vegard’s Risc processor atau sering disingkat AVR merupakan mikrokonktroler RISC 8 bit. Karena RISC inilah sebagian besar kode instruksinya dikemas dalam satu siklus clock. AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang elektronika dan instrumentasi.
Secara umum, AVR dapat dikelompokkan dalam 4 kelas. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral dan fungsinya. Keempat kelas tersebut adalah keluarga ATTiny, keluarga AT90Sxx, keluarga ATMega dan AT86RFxx.
b). MCS-51
Mikrokonktroler ini termasuk dalam keluarga mikrokonktroler CISC. Sebagian besar instruksinya dieksekusi dalam 12 siklus clock. Mikrokontroler ini berdasarkan arsitektur Harvard dan meskipun awalnya dirancang untuk aplikasi mikrokontroler chip tunggal, sebuah mode perluasan telah mengizinkan sebuah ROM luar 64KB dan RAM luar 64KB diberikan alamat dengan cara jalur pemilihan chip yang terpisah untuk akses program dan memori data.
Salah satu kemampuan dari mikrokontroler 8051 adalah pemasukan sebuah mesin pemroses boolean yang mengijikan operasi logika boolean tingkatan-bit dapat dilakukan secara langsung dan secara efisien dalam register internal dan RAM. Karena itulah MCS51 digunakan dalam rancangan awal PLC (programmable Logic Control).
c). PIC
Pada awalnya, PIC merupakan kependekan dari Programmable Interface Controller. Tetapi pada perkembangannya berubah menjadi Programmable Intelligent Computer. PIC termasuk keluarga mikrokonktroler berarsitektur Harvard yang dibuat oleh Microchip Technology. Awalnya dikembangkan oleh Divisi Mikroelektronik General Instruments dengan nama PIC1640. Sekarang Microhip telah mengumumkan pembuatan PIC-nya yang keenam.
d). ARM
ARM adalah prosesor dengan arsitektur set instruksi 32bit RISC (Reduced Instruction Set Computer) yang dikembangkan oleh ARM Holdings. ARM merupakan singkatan dari Advanced RISC Machine (sebelumnya lebih dikenal dengan kepanjangan Acorn RISC Machine). Pada awalnya ARM prosesor dikembangkan untuk PC (Personal Computer) oleh Acorn Computers, sebelum dominasi Intel x86 prosesor Microsoft di IBM PC kompatibel menyebabkan Acorn Computers bangkrut.
Mikrokonktroler Alv and Vegard’s Risc processor atau sering disingkat AVR merupakan mikrokonktroler RISC 8 bit. Karena RISC inilah sebagian besar kode instruksinya dikemas dalam satu siklus clock. AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang elektronika dan instrumentasi.
Secara umum, AVR dapat dikelompokkan dalam 4 kelas. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral dan fungsinya. Keempat kelas tersebut adalah keluarga ATTiny, keluarga AT90Sxx, keluarga ATMega dan AT86RFxx.
b). MCS-51
Mikrokonktroler ini termasuk dalam keluarga mikrokonktroler CISC. Sebagian besar instruksinya dieksekusi dalam 12 siklus clock. Mikrokontroler ini berdasarkan arsitektur Harvard dan meskipun awalnya dirancang untuk aplikasi mikrokontroler chip tunggal, sebuah mode perluasan telah mengizinkan sebuah ROM luar 64KB dan RAM luar 64KB diberikan alamat dengan cara jalur pemilihan chip yang terpisah untuk akses program dan memori data.
Salah satu kemampuan dari mikrokontroler 8051 adalah pemasukan sebuah mesin pemroses boolean yang mengijikan operasi logika boolean tingkatan-bit dapat dilakukan secara langsung dan secara efisien dalam register internal dan RAM. Karena itulah MCS51 digunakan dalam rancangan awal PLC (programmable Logic Control).
c). PIC
Pada awalnya, PIC merupakan kependekan dari Programmable Interface Controller. Tetapi pada perkembangannya berubah menjadi Programmable Intelligent Computer. PIC termasuk keluarga mikrokonktroler berarsitektur Harvard yang dibuat oleh Microchip Technology. Awalnya dikembangkan oleh Divisi Mikroelektronik General Instruments dengan nama PIC1640. Sekarang Microhip telah mengumumkan pembuatan PIC-nya yang keenam.
d). ARM
ARM adalah prosesor dengan arsitektur set instruksi 32bit RISC (Reduced Instruction Set Computer) yang dikembangkan oleh ARM Holdings. ARM merupakan singkatan dari Advanced RISC Machine (sebelumnya lebih dikenal dengan kepanjangan Acorn RISC Machine). Pada awalnya ARM prosesor dikembangkan untuk PC (Personal Computer) oleh Acorn Computers, sebelum dominasi Intel x86 prosesor Microsoft di IBM PC kompatibel menyebabkan Acorn Computers bangkrut.
Fungsi masing-masing port di mikrokontroler
Fungsi Kaki-Kaki (Pin)
Microcontroller Atmel MCS51 VCC, Kaki VCCdigunakan untuk masukan suplai
tegangan. GND, Kaki (pin) GNDfunsinya sebagai saluran ground atau pentanahan.
RST, Kaki RSTfungsinya sebagai masukan reset. Kondisi “1” selama 2 siklus mesin
pada saat oscillator bekerja akan me-reset mikrokontroler yang bersangkutan.
ALE/PROG, Kaki ALEdigunakan sebagai keluaran ALE atau Adreess Latch
Enable yang akan menghasilkan pulsa-pulsa untuk menahan byte rendah (low byte)
alamat selama mengakses memori eksternal. Kaki ini juga berfungsi sebagai
masukan pulsa program (the program pulse input) atau selama pemrograman
flash. Pada operasi normal, ALEakan berpulsa dengan laju 1/6 dari frekuensi
kristal dan dapat digunakan sebagai pewaktuan (timing) atau pendekatan
(clocking) rangkainan eksternal. PSEN, Kaki (Program Store
Enable) merupakan sinyal baca untuk memori program eksternal. Saat
mikrokontroler MCS51 menjalankan program dari memori eksternal, akan
diaktifkan dua kali per-siklus mesin, kecuali dua aktivasi dilompati
(diabaikan) saat mengakses memori data eksternal. EA/VPP, Kaki VPP( Exkternal
Access Enable) fungsinya sebagai kontrol untuk mengakses memori. harus
dihubungkan ke ground, jika mikrokontroler akan mengeksekusi program dari
memori eksrternal. Selain itu harus dihubungkan ke VCCjika akan mengakses
program secara internal. Kaki ini juga berfungsi untuk menerima tegangan 12V
(VPP) selama pemrograman flash, khususnya untuk tipe mikrokontroler 12V volt.
XTAL1, Kaki XTAL1merupakan masukan untuk penguat inverting oscillator dan
masukan untuk clock internal pada rangkaian operasi mikrokontroler. XTAL2, Kaki
XTAL2merupakan keluaran dari rangkaian penguat inverting oscillator.
Port 0
Port 0 merupakan port keluaran/masukan (I/O)
8-bit bertipe open drain bi-directional. Sebagai port keluaran, masing-masing
kaki dapat menyerap arus (sink current) delapan masukan TTL (sekitar 3,8 mA).
Pada saat logika “1” dituliskan ke port 0, maka kaki-kaki port 0 ini dapat
digunakan sebagai masukan-masukan berimpedansi tinggi. Port 0 juga dapat
dikonfigurasikan sebagai jalur alamat/data bagian rendah (low byte) selama
proses pengaksesan memori data dan program eksternal. Jika digunakan dalam mode
ini maka port 0 memiliki pull-up internal. Port 0 juga dapat menerima kode-kode
yang dikirimkan kepadanya selama proses pemrograman dan mengeluarkan kode-kode
selama proses verifikasi program yang telah tersimpan dalam Flash PEROM. Dalam
hal ini dibutuhkan pull-up eksternal selama proses verifikasi program.
Port 1
Port 1 merupakan port
I/O 8-bit bertipe bidirectional yang dilengkapi dengan pull-up internal.
Penyangga keluaran port 1 mampu memberikan/menyerap arus empat masukan
TTL(sekitar 1,6 mA). Jika logika “1” dituliskan ke kaki-kaki port 1, maka
masing-masing kaki port 1 akan di-pull-up high dengan pull-up internal sehingga
dapat digunakan sebagai masukan. Sebagai masukan jika kaki-kaki port 1
dihubungkan ke ground (di-pull-up low), maka masing-masing kaki akan memberikan
arus (source current) karena di-pull-up high secara internal. Port 1 juga
menerima alamat bagian rendah (low byte) selama pemrograman dan verifikasi pada
Flash PEROM.
Port 2
Port 2 merupakan port I/O 8-bit bertipe
bidirectional yang dilengkapi dengan pull-up internal. Penyangga keluaran port
2 mampu memberikan/menyerap arus empat masukan TTL (sekitar 1,6 mA). Jika
logika “1” dituliskan ke kaki-kaki port 2, maka masing-masing kaki port 2 akan
di-pull-up high dengan pull-up internal sehingga dapat digunakan sebagai
masukan. Sebagai masukan jika kaki-kaki port 2 dihubungkan ke ground
(di-pull-up low), maka masing-masing kaki akan memberikan arus (source current)
karena di-pull-up high secara internal. Port 2 akan memberikan byte alamat
bagian tinggi (high byte) selama pengambilan instruksi dari memori program
eksternal dan selama pengaksesan memori data yang menggunakan perintah dengan
alamat 16-bit (misalnya: MOVX @DPTR). Dalam aplikasi ini, jika ingin
mengirimkan “1”, maka digunakan pull-up internal yang sudah disediakan. Selama
pengaksesan memori data eksternal yang menggunakan perintah dengan alamat 8-bit
(misalnya: MOVX @R1), port 2 akan mengirimkan isi dari SFR P2. Port 2 juga
menerima alamat bagian tinggi selama pemrograman dan verifikasi pada Flash
PEROM.
Port 3
Port 3 merupakan port
I/O 8-bit bertipe bidirectional yang dilengkapi dengan pull-up internal.
Penyangga keluaran port 3 mampu memberikan/menyerap arus empat masukan
TTL(sekitar 1,6 mA). Jika logika “1” dituliskan ke kaki-kaki port 3, maka masing-masing
kaki port 3 akan di-pull-up high dengan pull-up internal sehingga dapat
digunakan sebagai masukan. Sebagai masukan jika kaki-kaki port 3 dihubungkan ke
ground (di-pull-up low), maka masing-masing kaki akan memberikan arus (source)
karena di-pull-up high secara internal. Port 3 juga digunakan untuk menerima
sinyal-sinyal kontrol (P3.6 dan P3.7), bersama-sama dengan port 2 (P2.6 dan
P2.7) selama proses pemrograman dan verifikasi pada Flash PEROM.
Diagram Pin
Diagram Pin
Mikrokontroler tipe
AT89S51 merupakan mikrokontroler keluarga MCS-51 dengan konfigurasi yang sama
persis dengan AT89C51 yang cukup terkenal, hanya saja AT89S51 mempunyai fitur
ISP (In-System Programmable Flash Memory). Fitur ini memungkinkan mikrokontroler
dapat diprogram langsung dalam suatu sistem elektronik tanpa melalui Programmer
Board atau Downloader Board. Mikrokontroler dapat diprogram langsung melalui
kabel ISP yang dihubungkan dengan paralel port pada suatu Personal Computer.
Adapun fitur yang dimiliki
Mikrokontroler AT89S51 adalah sebagai berikut :
1. Sebuah CPU (Central
Processing Unit) 8 bit yang termasuk keluarga MCS51.
2. Osilator internal
dan rangkaian pewaktu, RAM internal 128 byte (on chip).
3. Empat buah
Programmable port I/O,masing-masing terdiri atas 8 jalur I/O
4. Dua buah Timer
Counter 16 bit.
5. Lima buah jalur
interupsi (2 interupsi external dan 3 interupsi internal )
6. Sebuah port serial
dengan kontrol serial full duplex UART.
7. Kemampuan
melaksanakan operasi perkalian, pembagian dan operasi Boolean (bit)
8. Kecepatan
pelaksanaan instruksi per siklus 1 microdetik pada frekuensi clock 12 MHz
9. 4 Kbytes Flash ROM
yang dapat diisi dan dihapus sampai 1000 kali
10. In-System
Programmable Flash Memory
Dengan keistimewaan
diatas, pembuatan alat menggunakan AT89S51 menjadi lebih sederhana dan tidak
memerlukan IC pendukung yang banyak. Sehingga mikrokontroler AT89S51 ini
mempunyai keistimewaan dari segi perangkat keras. Adapun blok diagram dari
mikrokontroler 89S51 diperlihatkan pada Gambar 1.1.
Gambar 1.1. Blok
diagram dari mikrokontroler 89S51
Konfigurasi Pin
Mikrokontroler AT89S51
Susunan pin
mikrokontroler AT89S51 diperlihatkan pada Gambar 1.2.
Gambar 1.2. Konfigurasi
Pin AT89S51
Mikrokontroler AT89S51
memiliki pin berjumlah 40 dan umumnya dikemas dalam DIP (Dual Inline Package).
Masing-masing pin pada mikrokontroler AT89S51 mempunyai kegunaan sebagai
berikut:
Port 0
Port 0 merupakan port
dua fungsi yang berada pada pin 32-39 dari AT89S51. Dalam rancangan sistem
sederhana port ini sebagai port I/O serbaguna. Untuk rancangan yang lebih
komplek dengan melibatkan memori eksternal jalur ini dimultiplek untuk bus data
dan bus alamat.
Port 1
Port 1 disediakan
sebagai port I/O dan berada pada pin 1-8. Beberapa pin pada port ini memiliki
fungsi khusus yaitu P1.5 (MOSI), P1.6 (MISO), P1.7 (SCK) yang digunakan untuk
jalur download program.
Port 2
Port 2 ( pin 21-28 )
merupakan port dua fungsi yaitu sebagai I/O serbaguna, atau sebagai bus alamat
byte tinggi untuk rancangan yang melibatkan memori eksternal.
Port 3
Port 3 adalah port dua fungsi yang berada pada
pin 10-17, port ini memiliki multi fungsi, seperti yang terdapat pada gambar 1.1
ini gambar mikrokontroler AT mega-8535






Tidak ada komentar:
Posting Komentar