1.1. Dunia Mikroprosesor dan Mikrokontroler
Banyak jenis mikroprosesor telah dibuat dengan kemampuan dan fungsi yang berbeda, tetapi secara prinsip cara kerjanya sama. Perangkat keras dibuat menjadi semakin canggih, jutaan transistor dijejalkan didalamnya, miniaturisasi dimensi semakin ditingkatkan dengan kemampuan mengolah program yang lebih komplek sehingga memungkinkan untuk aplikasi di segala bidang. Perkembangan perangkat lunak juga berkembang tak terbatas, seakan hanya dibatasi oleh kemampuan imajinasi manusia saja.
Dalam perkembangannya, mikroprosesor dibuat menurut kebutuhan aplikasinya yang lebih spesifik, dalam hal ini menjadi beberapa jenis, yaitu;
- Mikoprosesor RISC (Reduced Instruction Set of Computing) dan CISC (Complex Instruction Set of Computing). Jenis ini yang digunakan untuk pengolahan informasi dengan software yang rumit dan digunakan untuk kebanyakan PC saat ini.
- Pengolah Sinyal Digital – DSP (Digital Signal Processor). Memiliki software dan hardware yang ditujukan untuk mempermudah memproses sinyal-sinyal digital. Digunakan pada perangkat audio – video modern seperti VCD, DVD, home teatre dan juga pada card-card multimedia di komputer.
- Mikrokontroler, adalah mikroprosesor yang dikhususkan untuk instrumentasi dan kendali. Contoh aplikasi pada kendali motor, berperan seperti PLC (Programmable Logic Controller), pengaturan pengapian dan injeksi bahan bakar pada kendaraan bermotor atau alat mengukur suatu besaran, seprti suhu, tekanan, kelembaban dan lain-lain.
Mempelajari mikroprosesor semacam pentium atau seri 80XXX sangat sulit, terutama bagi yang baru mempelajari mikroprosesor, karena begitu banyak fungsi dan bagian-bagian yang cukup rumit, belum lagi perkembangannya yang begitu cepat, sehingga sebelum selesai belajar produk lama, produk baru sudah muncul dengan konfigurasi yang berbeda, meskipun demikian pengetahuan dasar mikroprosesor dapat dimengerti dengan mudah dan dapat diterapkan untuk aplikasi sederhana.
Mikroprosesor adalah piranti keras yang tidak akan bisa bekerja kalau tidak ada perangkat lunak. Inilah yang membedakan mikroprosesor dengan rangkaian digital diskrit. Kemampuannya untuk diprogram, dan diprogram ulang adalah suatu kelebihan didalam sistem mikroprosesor. Contohnya dalam suatu sistem pengendali lampu lalu lintas dengan rangkaian diskrit perlu menambahkan atau merubah rangkaian bila diperlukan perubahan sistem, tetapi dengan sistem mikroprosesor, bisa dilakukan dengan hanya merubah program. Perhatikan juga bahwa PC saat ini bisa multi fungsi dengan hanya mengganti programnya saja.
Hampir semua fungsi rangkaian digital dapat diambil alih oleh suatu sistem mikroprosesor atau mikrokontroler, tetapi tidak perlu semua rangkaian digital harus dengan sistem mikroprosesor. Rangkaian yang sederhana cukup direalisasikan dengan komponen diskrit akan lebih menghemat dana, waktu dan justru bisa lebih handal. Disamping itu untuk rangkaian digital yang memerlukan kecepatan sangat tinggi, masih diperlukan rangkaian digital diskrit, sebagai contoh sederhana suatu fungsi AND gate dapat diemulasikan dengan suatu mikroprosesor dengan program tertentu, fungsi AND dengan AND gate dieksekusi dalam orde nanodetik, sedangkan dengan mikroprosesor memerlukan waktu dalam orde mikro atau milli detik. Meskipun demikian dengan makin majunya teknologi, kendala kecepatan tersebut menjadi hilang, sebagai contoh rangkaian dekoder MPEG, tadinya memerlukan card khusus dalam suatu PC (hardware), kini dapat dilakukan dengan hanya mengisntall program saja asalkan komputernya memiliki kecepatan tinggi.
Secara umum suatu sistem mikroprosesor akan memiliki kelebihan dibanding sistem diskrit atau dengan digital IC sebagai berikut;
- Reprogrammable, artinya dapat diprogram ulang untuk mendapatkan fungsi yang berbeda
- Rangkaian lebih terintegrasi, lebih kompak, sederhana dan tidak rumit, memudahkan membuat PCB.
- Fleksibel dalam pengembangannya
Selain itu perlu diperhatikan kekurangannya sebagai berikut;
- Banyak jenis mikroprosesor dengan bahasa yang berbeda, yang mana satu sama lain kadang tidak kompatibel, sehingga menyulitkan pemakai dalam pengembangannya.
- Kerusakan software berakibat sistem macet dan tidak dapat diperbaiki jika tidak diketahui kode-kodenya.
- Ketergantungan pada pembuat software
- Sistem mikroprosesor lebih sensitif terhadap ganguan derau dari luar.
- Kecepatan relatif rendah.
- Cepat usang (obsolete)
- Memiliki memory internal relatif sedikit.
- Memiliki unit I/O langsung
- Pemroses bit, selain byte
- Memiliki perintah / program yang langsung berhubungan dengan I/O
- Program relatif sederhana.
- Beberapa varian memiliki memori yang tidak hilang bila catu padam didalamnya untuk menyimpan program
Sedangkan dalam hal aplikasi, sistem mikokontroler memiliki karakteristik sebagai berikut;
- Memiliki program khusus yang disimpan dalam memori untuk aplikasi tertentu, tidak seperti PC yang multifungsi karena mudahnya memasukan program. Program mikrokontroler relatif lebih kecil daripada program-program pada PC.
- Konsumsi daya kecil.
- Rangkaian sederhana dan kompak
- Murah, karena komponen sedikit
- Unit I/O yang sederhana, misalnya keypad, LCD, LED, Latch.
- Lebih tahan terhadap kondisi lingkungan ekstrem misalnya temperatur, tekanan, kelembaban dan sebagainya.
Untuk mempelajari mikrokontroler perlu praktek, atau minimal dengan suatu simulatornya, tanpa praktek tidak akan didapat apa-apa. Untuk mempelajari suatu mikrokontroler atau ingin mengaplikasikan mikrokontroler untuk kendali atau kontrol harus diperhatikan hal-hal sebagai berikut;
- Layaklah digunakan suatu sistem mikrokontroler ?. Jika rangkaian terlalu sederhana cobalah dengan rangkaian diskrit saja. Sebagai contoh, jika ingin membuat flasher (lampu kedap-kedip), tidaklah perlu dengan rangkaian mikrokontroler, tetapi jika durasi kedap-kedip diinginkan sangat presisi dan mudah diubah, maka dengan mikrokontroler adalah solusi yang baik.
- Apakah mikrokontroler mudah didapat dipasaran ?. Faktor keberadaan barang sangat mendukung untuk berekperimen.
- Apakah harganya terjangkau ?. Berekperimen dengan mikrokontroler kemungkinan membuat chip menjadi gampang rusak, jadi sebaiknya gunakan yang harganya relatif murah. Kecuali bagi kalangan industri, dimana harga tidak menjadi masalah.
- Adakah tersedia perangkat pengembangannya ?. Belajar mikrokontroler tidak hanya belajar hardware, tetapi juga software. Data Hardware bisa didapat dari internet, sebab setiap pabrik pembuat chip mikrokontroler, pasti memberikan data sheet di website nya, ini tidak menjadi masalah. Daftar perintah software biasanya juga disediakan di website , tetapi ini belum menjamin bisa membuat program, karena diperlukan latihan dan pengalaman untuk menyusun perintah-perintah menjadi suatu program yang berhasil guna.
- Adakah, atau seberapa banyak kah forum-forum atau situs di internet yang membahas atau mendiskusikan tentang mikrokontroler tersebut ?. Tukar menukar pengalaman, berdiskusi, bertanya melalui forum di internet adalah sarana efektif saat ini untuk mempercepat mempelajari mikrokontroler.
Perangkat pengembangan suatu sistem mikrokontroler adalah sangat penting untuk melatih dan berekperimen dengan mikrokontroler yang dipilih, adapun yang disebut perangkat pengembangan atau dalam bahasa Inggris disebut development tools, bisa terdiri dari;
- Compiler atau penterjemah (Software). Mikrokontroler bekerja dalam bahasa mesin, sedangkan manusia sulit untuk mengerti bahasa mesin, untuk mudahnya dibuat program dengan bahasa yang lebih tinggi tingkatnya, yaitu C, BASIC, atau ASSEMBLER, selanjutnya dengan bantuan Compiler, program akan diterjemahkan dalam bahasa mesin, tentu saja butuh PC (Personal Computer)
- Simulator (Software), adalah program komputer yang mensimulasikan kerja dari mikrokontroler. Dengan memasukan program dan dijalankan, maka register, memori dan input-output (I/O) yang nampak dilayar PC akan menunjukan isi, sesuai dengan program yang dijalankan.
- Emulator (Software dan Hardware), suatu alat yang berhubungan dengan PC yang dapat mengemulasikan kerja mikrokontroler, artinya program-program dibuat dan di compile di PC setelah itu di download ke emulator (istilahnya target), dan emulator akan bekerja secara sendiri (stand alone), hubungan dengan PC bisa dilepas. Jika ada kesalahkan program, maka cukup melakukan koreksi di PC, dan didownload ulang. Dengan demikian menghemat waktu reprogramming.
- In Circuit Emulator (ICE), adalah pengembangan dari emulator, hubungan dengan PC tetap ada, karena PC dianggap sebagai chip mikrokontroler bayangan, artinya bila kita membuat suatu rangkaian yang menggunakan suatu chip mikrokontroler sebagai komponen utamanya, chip tersebut dapat kita cabut dari soketnya, dan digantikan oleh konektor berbentuk chip yang terhubung kabel-kabel ke PC (emulator card), sekarang PC menggantikan chip tersebut. Selama program dijalankan, isi register-register dalam mikrokontroler ditampilkan dilayar, program juga dapat diperlambat, sehingga mempermudah penyelusuran kesalahan (bug).
- Programmer, adalah alat yang digunakan untuk mengisi program dalam suatu mikrokontroler, biasanya alat ini menggunakan PC sebagai terminal pintarnya, selanjutnya melalui serial port, paralel port, USB atau card khusus antarmuka ke programmer, kode-kode mesin dimasukkan dalam memory ROM, EPROM yang berada diluar MCU atau Flash memory yang jadi satu kemasan dengan MCU.
Dari perangkat-perangkat tersebut, compiler merupakan software yang mutlak diperlukan, apabila tidak ingin dipusingkan dengan bahasa mesin. Sedangkan programmer (downloader) adalah hardware dan software/firmware yang mutlak diperlukan untuk dapat men’download’ kode-kode perintah ke mikrokontroler. Compiler, simulator mudah didapat disitus internet sesuai dengan jenis produknya. Cara membuat programmer juga banyak tersedia di situs internet, tetapi ini diperlukan pengetahuan elektronika praktis. Emulator harus membuat hardware dan juga diisi software yang bisa didapatkan dari internet. ICE agak susah membuatnya, beberapa perusahaan membuat dan menjual dengan harga yang cukup mahal.
Jadi dapat disimpulkan bahwa suatu mikrokontrontroler adalah suatu chip (rangkaian terintegrasi – IC) VLSI (Very Large Scale IC) mikroprosesor yang dikhususkan untuk instrumentasi dan kendali dan bersifat reprogrammable. Mikrokontroler memiliki unit memory sendiri (meskipun sangat terbatas), unit I/O (Input/Output) yang bisa dikoneksikan langsung dengan sensor atau aktuator. Program disimpan dalam memori yang tidak hilang bila catu daya padam, biasanya dalam bentuk ROM, PROM atau EPROM diluar mikrokontroler, atau beberapa seri atau varian memiliki ROM didalam mikrokontroler itu sendiri. Cara mengisi program dengan suatu alat pemrogram, yang biasanya berhubungan dengan PC. Untuk mempelajari dan mengaplikasikan mikrokontroler diperlukan perangkat pengembang, literatur dan forum-forum diskusi.
sumber:
http://www.elektro.undip.ac.id/mikro/?page_id=206