Daftar Isi
Bab 1: Pengenalan Mikrocontroller
1.1 Apa itu Mikrocontroller?
1.2 Perbedaan antara Mikrocontroller dan Mikroprosesor
1.3 Keuntungan dan Kekurangan Menggunakan Mikrocontroller
1.4 Aplikasi Mikrocontroller dalam Kehidupan Sehari-hari
Bab 2: Arsitektur Dasar Mikrocontroller
2.1 Komponen-komponen Utama Mikrocontroller
2.1.1 CPU (Central Processing Unit)
2.1.2 Memori (RAM, ROM, Flash)
2.1.3 I/O (Input/Output)
2.1.4 Interupsi
2.1.5 Timer
2.1.6 DMA (Direct Memory Access)
2.2 Fungsi dan Cara Kerja Masing-masing Komponen
2.3 Diagram Blok Arsitektur Mikrocontroller
Bab 3: Set Instruksi Mikrocontroller
3.1 Apa itu Set Instruksi?
3.2 Jenis-jenis Set Instruksi
3.3 Cara Kerja Set Instruksi
3.4 Contoh Set Instruksi Mikrocontroller Populer
Bab 4: Pemilihan Mikrocontroller
4.1 Faktor-faktor yang Perlu Dipertimbangkan dalam Memilih Mikrocontroller
4.1.1 Kinerja
4.1.2 Konsumsi Daya
4.1.3 Fitur I/O
4.1.4 Harga
4.1.5 Ketersediaan Software dan Tools
4.2 Contoh Aplikasi Mikrocontroller dan Mikrocontroller yang Tepat untuk Digunakan
Bab 5: Praktikum Mikrocontroller
5.1 Menyiapkan Peralatan dan Bahan
5.2 Merakit Rangkaian Sederhana dengan Mikrocontroller
5.3 Memprogram Mikrocontroller
5.4 Menguji dan Menjalankan Rangkaian
Lampiran
Daftar Pustaka
Glosarium
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Bab 1: Pengenalan Mikrocontroller
1.1 Apa itu Mikrocontroller?
Mikrocontroller adalah sebuah sirkuit elektronik terpadu (IC) yang memiliki semua komponen dasar komputer, yaitu CPU, memori, dan I/O, dalam satu chip. Mikrocontroller dirancang untuk dapat diprogram dan digunakan untuk mengendalikan sistem elektronik secara mandiri.
1.2 Perbedaan antara Mikrocontroller dan Mikroprosesor
Mikrocontroller dan mikroprosesor memiliki beberapa kesamaan, tetapi ada juga beberapa perbedaan utama antara keduanya. Perbedaan utama antara mikrocontroller dan mikroprosesor adalah sebagai berikut:
Kompleksitas: Mikrocontroller umumnya lebih sederhana dan lebih murah daripada mikroprosesor.
Fungsionalitas: Mikrocontroller biasanya dirancang untuk fungsi tertentu, sedangkan mikroprosesor lebih serbaguna.
Perangkat periferal: Mikrocontroller biasanya memiliki perangkat periferal terintegrasi, seperti I/O, timer, dan ADC, sedangkan mikroprosesor biasanya tidak memiliki perangkat periferal terintegrasi.
Konsumsi daya: Mikrocontroller umumnya memiliki konsumsi daya yang lebih rendah daripada mikroprosesor.
1.3 Keuntungan dan Kekurangan Menggunakan Mikrocontroller
Keuntungan:
Sederhana dan murah: Mikrocontroller umumnya lebih sederhana dan lebih murah daripada mikroprosesor, sehingga lebih hemat biaya untuk aplikasi yang tidak memerlukan kinerja tinggi.
Mudah digunakan: Mikrocontroller biasanya lebih mudah digunakan daripada mikroprosesor karena memiliki perangkat periferal terintegrasi dan set instruksi yang lebih sederhana.
Hemat daya: Mikrocontroller umumnya memiliki konsumsi daya yang lebih rendah daripada mikroprosesor, sehingga ideal untuk aplikasi portabel.
Kekurangan:
Kinerja: Mikrocontroller umumnya memiliki kinerja yang lebih rendah daripada mikroprosesor.
Fungsionalitas: Mikrocontroller biasanya dirancang untuk fungsi tertentu, sehingga tidak serbaguna seperti mikroprosesor.
Ketersediaan perangkat lunak: Perangkat lunak untuk mikrocontroller mungkin tidak tersedia seluas untuk mikroprosesor.
1.4 Aplikasi Mikrocontroller dalam Kehidupan Sehari-hari
Mikrocontroller digunakan dalam berbagai aplikasi sehari-hari, termasuk:
Peralatan elektronik: Mikrocontroller digunakan dalam berbagai peralatan elektronik, seperti televisi, komputer, dan smartphone.
Peralatan rumah tangga: Mikrocontroller digunakan dalam berbagai peralatan rumah tangga, seperti mesin cuci, kulkas, dan AC.
Kendaraan: Mikrocontroller digunakan dalam berbagai kendaraan, seperti mobil, motor, dan truk.
Peralatan medis: Mikrocontroller digunakan dalam berbagai peralatan medis, seperti monitor pasien dan alat pacu jantung.
Mainan: Mikrocontroller digunakan dalam berbagai mainan, seperti video game dan mobil-mobilan remote control.
Peralatan industri: Mikrocontroller digunakan dalam berbagai peralatan industri, seperti robot dan mesin CNC.
Mikrocontroller terus berkembang dan menjadi semakin canggih, sehingga penggunaannya akan semakin luas di masa depan.
Bab 2: Arsitektur Dasar Mikrocontroller
2.1 Komponen-komponen Utama Mikrocontroller
Mikrocontroller terdiri dari beberapa komponen utama, yaitu:
CPU (Central Processing Unit): CPU adalah otak dari mikrocontroller. CPU bertanggung jawab untuk mengeksekusi instruksi yang disimpan dalam memori.
Memori: Memori digunakan untuk menyimpan instruksi, data, dan program. Mikrocontroller biasanya memiliki beberapa jenis memori, termasuk RAM (Random Access Memory), ROM (Read-Only Memory), dan Flash Memory.
I/O (Input/Output): I/O digunakan untuk menghubungkan mikrocontroller dengan perangkat eksternal. Mikrocontroller biasanya memiliki beberapa pin I/O yang dapat digunakan untuk input digital, output digital, input analog, dan output analog.
Interupsi: Interupsi digunakan untuk memberi tahu CPU bahwa ada peristiwa yang perlu segera ditangani. Interupsi dapat digunakan untuk berbagai keperluan, seperti menangani input dari perangkat eksternal atau menanggapi timer.
Timer: Timer digunakan untuk menghasilkan sinyal waktu. Timer dapat digunakan untuk berbagai keperluan, seperti mengontrol LED berkedip atau menghasilkan sinyal PWM.
DMA (Direct Memory Access): DMA digunakan untuk mentransfer data antara memori dan perangkat periferal tanpa perlu campur tangan CPU. DMA dapat digunakan untuk meningkatkan kinerja sistem.
2.2 Fungsi dan Cara Kerja Masing-masing Komponen
CPU: CPU menerima instruksi dari memori dan mengeksekusinya. CPU terdiri dari beberapa bagian utama, termasuk ALU (Arithmetic Logic Unit), register, dan bus.
Memori: Memori digunakan untuk menyimpan instruksi, data, dan program. Memori dapat diakses oleh CPU dan perangkat periferal.
I/O: I/O digunakan untuk menghubungkan mikrocontroller dengan perangkat eksternal. I/O dapat digunakan untuk input digital, output digital, input analog, dan output analog.
Interupsi: Interupsi memberi tahu CPU bahwa ada peristiwa yang perlu segera ditangani. CPU akan menghentikan eksekusi instruksi saat ini dan menangani interupsi sebelum melanjutkan eksekusi instruksi.
Timer: Timer menghasilkan sinyal waktu. Timer dapat digunakan untuk berbagai keperluan, seperti mengontrol LED berkedip atau menghasilkan sinyal PWM.
DMA: DMA mentransfer data antara memori dan perangkat periferal tanpa perlu campur tangan CPU. DMA dapat digunakan untuk meningkatkan kinerja sistem.
2.3 Diagram Blok Arsitektur Mikrocontroller
Diagram blok arsitektur mikrocontroller menunjukkan hubungan antara komponen-komponen utama mikrocontroller. Diagram blok biasanya terdiri dari kotak-kotak yang mewakili komponen-komponen mikrocontroller dan garis-garis yang mewakili koneksi antara komponen-komponen tersebut.
Bab 3: Set Instruksi Mikrocontroller
3.1 Apa itu Set Instruksi?
Set instruksi adalah kumpulan instruksi yang dapat dieksekusi oleh CPU. Setiap instruksi memiliki kode operasi dan operand. Kode operasi menentukan operasi yang akan dilakukan, dan operand menentukan data yang akan dioperasikan.
3.2 Jenis-jenis Set Instruksi
Ada dua jenis set instruksi utama:
Set instruksi RISC (Reduced Instruction Set Computer): Set instruksi RISC terdiri dari instruksi yang sederhana dan cepat dieksekusi. Set instruksi RISC umumnya lebih kecil dan lebih mudah dipelajari daripada set instruksi CISC.
Set instruksi CISC (Complex Instruction Set Computer): Set instruksi CISC terdiri dari instruksi yang lebih kompleks dan lebih kuat daripada set instruksi RISC. Set instruksi CISC umumnya lebih besar dan lebih sulit dipelajari daripada set instruksi RISC.
3.3 Cara Kerja Set Instruksi
Ketika CPU menerima instruksi, CPU akan mendekode instruksi tersebut untuk menentukan operasi yang akan dilakukan. CPU kemudian akan mengambil operand dari memori atau register dan mengeksekusi operasi.
3.4 Contoh Set Instruksi Mikrocontroller Populer
Beberapa set instruksi mikrocontroller populer termasuk:
Set instruksi MCS-51: Set instruksi MCS-51 adalah set instruksi CISC yang banyak digunakan pada mikrocontroller 8-bit.
Set instruksi AVR: Set instruksi AVR adalah set instruksi RISC yang banyak digunakan pada mikrocontroller 8-bit dan 32-bit.
Set instruksi ARM: Set instruksi ARM adalah set instruksi RISC yang banyak digunakan pada mikrocontroller 32-bit dan 64-bit.
Bab 4: Pemilihan Mikrocontroller
4.1 Faktor-faktor yang Perlu Dipertimbangkan dalam Memilih Mikrocontroller
Memilih mikrocontroller yang tepat untuk aplikasi Anda merupakan langkah penting dalam proses pengembangan sistem. Berikut adalah beberapa faktor yang perlu dipertimbangkan:
4.1.1 Kinerja
Kinerja mikrocontroller diukur dalam kecepatan clock dan jumlah instruksi per detik (MIPS). Semakin tinggi kecepatan clock dan MIPS, semakin tinggi kinerja mikrocontroller. Anda perlu memilih mikrocontroller dengan kinerja yang cukup untuk memenuhi kebutuhan aplikasi Anda.
4.1.2 Konsumsi Daya
Konsumsi daya merupakan faktor penting yang perlu dipertimbangkan, terutama untuk aplikasi portabel. Anda perlu memilih mikrocontroller dengan konsumsi daya yang rendah untuk memperpanjang usia baterai perangkat Anda.
4.1.3 Fitur I/O
Mikrocontroller memiliki berbagai macam fitur I/O, seperti pin I/O digital, ADC, DAC, timer, dan komunikasi serial. Anda perlu memilih mikrocontroller dengan fitur I/O yang sesuai dengan kebutuhan aplikasi Anda.
4.1.4 Harga
Harga mikrocontroller bervariasi tergantung pada kinerjanya, fitur-fiturnya, dan ketersediaannya. Anda perlu memilih mikrocontroller yang menawarkan nilai terbaik untuk kebutuhan Anda.
4.1.5 Ketersediaan Software dan Tools
Memilih mikrocontroller dengan ketersediaan software dan tools yang memadai akan memudahkan proses pengembangan dan debugging aplikasi Anda. Pastikan Anda memilih mikrocontroller yang didukung oleh software dan tools yang Anda kuasai.
4.2 Contoh Aplikasi Mikrocontroller dan Mikrocontroller yang Tepat untuk Digunakan
Berikut adalah beberapa contoh aplikasi mikrocontroller dan mikrocontroller yang tepat untuk digunakan:
Mengontrol LED: Untuk aplikasi sederhana seperti mengontrol LED, Anda dapat menggunakan mikrocontroller 8-bit dengan kecepatan clock rendah, seperti ATmega8 atau PIC12F1822.
Membaca sensor: Untuk aplikasi yang membutuhkan pembacaan sensor analog, Anda dapat menggunakan mikrocontroller dengan ADC internal, seperti ATmega328P atau PIC18F4520.
Mengendalikan motor: Untuk aplikasi yang membutuhkan pengendalian motor, Anda dapat menggunakan mikrocontroller dengan PWM internal, seperti ATmega2560 atau PIC16F887.
Mengembangkan produk IoT: Untuk mengembangkan produk IoT, Anda dapat menggunakan mikrocontroller dengan Wi-Fi atau Bluetooth internal, seperti ESP32 atau nRF52840.
Tips:
Gunakan benchmark untuk membandingkan kinerja mikrocontroller yang berbeda.
Pertimbangkan trade-off antara kinerja, konsumsi daya, dan harga.
Pilih mikrocontroller dari vendor ternama dengan reputasi baik.
Baca datasheet mikrocontroller dengan seksama sebelum memilihnya.
5.1 Menyiapkan Peralatan dan Bahan
Sebelum memulai praktikum mikrocontroller, Anda perlu menyiapkan peralatan dan bahan yang diperlukan. Berikut adalah beberapa contoh peralatan dan bahan yang umum digunakan:
Papan pengembangan mikrocontroller: Papan pengembangan mikrocontroller adalah papan sirkuit tercetak yang berisi mikrocontroller, beberapa perangkat periferal, dan konektor untuk menghubungkan papan ke komputer. Contoh papan pengembangan mikrocontroller yang populer adalah Arduino Uno dan Raspberry Pi Pico.
Kabel jumper: Kabel jumper digunakan untuk menghubungkan komponen elektronik pada papan pengembangan.
Sensor dan aktuator: Sensor dan aktuator digunakan untuk berinteraksi dengan dunia luar. Contoh sensor yang umum digunakan adalah sensor suhu, sensor cahaya, dan sensor jarak. Contoh aktuator yang umum digunakan adalah LED, motor, dan speaker.
Perangkat lunak pemrograman: Perangkat lunak pemrograman digunakan untuk menulis dan mengunggah program ke mikrocontroller. Contoh perangkat lunak pemrograman yang populer adalah Arduino IDE dan Thonny Python.
5.2 Merakit Rangkaian Sederhana dengan Mikrocontroller
Setelah menyiapkan peralatan dan bahan, Anda dapat mulai merakit rangkaian sederhana dengan mikrocontroller. Berikut adalah beberapa contoh rangkaian sederhana yang umum dibuat:
Mengontrol LED: Rangkaian ini digunakan untuk mengontrol LED dengan menggunakan mikrocontroller.
Membaca sensor suhu: Rangkaian ini digunakan untuk membaca nilai sensor suhu dan menampilkannya pada layar LCD.
Mengendalikan motor: Rangkaian ini digunakan untuk mengendalikan motor dengan menggunakan mikrocontroller.
5.3 Memprogram Mikrocontroller
Setelah merakit rangkaian, Anda perlu memprogram mikrocontroller untuk melakukan tugas yang diinginkan. Program mikrocontroller ditulis dalam bahasa pemrograman khusus. Contoh bahasa pemrograman mikrocontroller yang populer adalah C dan Python.
5.4 Menguji dan Menjalankan Rangkaian
Setelah memprogram mikrocontroller, Anda perlu menguji dan menjalankan rangkaian. Pastikan semua koneksi sudah benar dan program mikrocontroller sudah terunggah dengan benar. Jika rangkaian bekerja dengan benar, Anda akan melihat LED menyala, nilai sensor suhu ditampilkan pada layar LCD, atau motor berputar.
Tips:
Mulailah dengan rangkaian sederhana dan tingkatkan kompleksitasnya secara bertahap.
Ikuti instruksi dengan seksama dan bacalah datasheet komponen elektronik dengan seksama.
Jangan ragu untuk bertanya kepada instruktur atau teman Anda jika Anda mengalami kesulitan.
Bersabarlah dan teruslah berlatih, Anda akan semakin mahir dalam menggunakan mikrocontroller.