Namun CPU memiliki fungsi utama untuk mengambil kemudian mendekode instruksi. Instruksi yang telah diambil dari memori program perlu untuk diterjemahkan atau melakukan decode oleh CPU tersebut.
-
Memori atau Penyimpanan
Memori dalam MicroController memiliki fungsi yang hampir sama dengan mikroprosesor. Umumnya memori ini digunakan untuk menyimpan berbagai data dan program penting. Sebuah MicroController tentunya mempunyai sejumlah RAM dan ROM (EEPROM, EPROM dan lain sebagainya) ataupun memori flash yang digunakan untuk menyimpan kode sumber program (source code program).
-
Port INPUT / OUTPUT Paralel
Port Input / output biasanya digunakan untuk dapat mendorong atau menghubungkan beberapa perangkat seperti LED, LCD, memori, printer dan perangkat INPUT / OUTPUT yang lainnya ke MicroController.
-
Port Serial (Serial Port)
Port serial atau serial port ini menyediakan beberapa antarmuka serial antara MicroController dengan periferal lain seperti port paralel.
-
Pengatur Waktu dan Penghitung
Timer dan Counter merupakan salah satu kompinen yang memiliki fungsi sangat penting bagi MicroController. MicroController mungkin mempunyai timer dan counter lebih dari satu. Pengatur waktu (timer) dan penghitung (counter) menyediakan berbagai macam fungsi pengaturan waktu dan penghitungan pada MicroController.
Adapun operasi paling utama yang dilakukan pada bagian ini adalah fungsi jam, pembangkitan pulsa, modulasi, osilasi, pengukuran frekuensi, dan lain sebagainya. Bagian ini juga bisa digunakan untuk melakukan perhitungan pulsa eksternal.
-
Analog to Digital Converter atau Pengonversi Analog ke Digital (ADC)
Konverter ADC memiliki fungsi untuk mengubah sinyal analog dalam bentuk digital. Sinyal input dalam konverter ini harus berupa analog (seperti misalnya output dari sensor), sementara untuk outputnya berupa digital. Output digital bisa digunakan untuk banyak aplikasi digital seperti misalnya layar digital pada perangkat pengukuran.
-
Digital to Analog Converter atau Pengonversi Digital ke Analog (DAC)
DAC umumnya melakukan operasi pembalikan ke konversi ADC. DAC memiliki fungsi untuk mengubah sinyal digital menjadi format analog. Ini umumnya digunakan dengan tujuan untuk dapat mengendalikan perangkat analog seperti motor DC dan lain sebagainya.
-
Kontrol Interupsi (Interrupt Control)
Kontrol interupsi (interrupt control) memiliki fungsi untuk menyediakan interupsi (penundaan) untuk program kerja. Interrupt sendiri bisa berupa eksternal (diaktifkan menggunakan pin interrupt) atau internal (menggunakan instruksi interupsi selama masa pemograman).
-
Blok Fungsi Khusus (Special Functioning Block)
Beberapa MicroController yang hanya bisa digunakan pada beberapa aplikasi khusus seperti sistem Robotik, pengontrol ini mempunyai beberapa port tambahan untuk dapat melakukan operasi khusus tersebut yang pada umumnya dinamakan sebagai Blok Fungsi Khusus.
Jenis-Jenis MicroController
MicroController terbagi dalam beberapa jenis yang sesuai dengan fungsinya. Adapun jenis-jenis MicroController adalah sebagai berikut:
-
MicroController AVR
MicroController ALV and Vegard’s Risc prosessor atau yang biasa disebut sebagai AVR adalah jenis MicroController RISC 8 bit. Jenis ini termasuk dalam RISC, sehingga semua kode instruksinya akan dikemas pada sebuah siklus clock. AVR adalah jenis MicroController yang paling umum digunakan dalam bidang elektronika dan juga instrumentasi.
MicroController ini merupakan jenis arsitektur MicroController yang menjadi andalan Atmel. Arsitektur yang satu ini didesain khusus dengan menawarkan beragam keunggulan dan penyempurnaan dari arsitektur MicroController yang sudah ada sebelumnya.
Atmel sendiri sudah memproduksi beragam seri MicroController AVR dan sudah dipasarkan hingga ke seluruh dunia sebagai MicroController yang memiliki sifat low cost dan high performance.Di Indonesia sendiri, MicroController AVR banyak digunakan karena menawarkan berbagai fitur yang sangat lengkap, mudah didapat dan memiliki harga terjangkau.
Tipe MicroController AVR
Pada umumnya MicroController dibedakan menjadi 4 kelas, yaitu keluarga ATTiny, keluarga AT90Sxx, keluarga ATMegadan dan A86RFxx. Yang membedakan dari setiap kelas tersebut adalah memori, peripheral, dan juga fungsinya.
Di bawah ini kami akan memberikan contoh tabel dari beberapa seri MicroController AVR yang merupakan buatan dari Atmel lengkap beserta fitur dan fungsinya.