MIKROPENGENDALI C TEMU – 2a THE AVR MICROCONTROLLER: HISTORY AND FEATURE Oleh : Danny Kurnianto,S.T.,M.Eng SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM PURWOKERTO
SECTION 1 . MICROCONTROLLER AND EMBEDDED PROCESSORS
Microcontroller vs General Purpose Microprocessor Apa perbedaan antara Microcontroller dengan Microprocessor? Yang dimaksud dengan Microprocessor disini adalah General Purpose Microprocessor seperti keluarga Intel x86 (8086, 80286, 80386, 80486, dan Pentium) atau Keluarga Motorola Jadi, Microprocessor disini tidak memiliki RAM, ROM dan port I/O yang tertanam dalam satu chip. Agar sistem microprocessor dapat berjalan, maka perlu ditambahkan RAM, ROM, Port I/O dan timer eksternal sehingga terlihat lebih besar dan mahal. Kelebihannya adl perancang dapat menentukan sendiri berapa jumlah RAM,ROM da port I/O yang diperlukan. Hal ini tidak terjadi pada Microcontroller.
Microcontroller memiliki sebuah CPU (Microprocessor) dengan tambahan RAM, ROM, I/O Port dan Timer dalam jumlah yang tetap yang tertanam pada satu chip. Sehingga perancang tidak dapat menambahkan Memori, I/O Port dan timer eksternal ke dalam chip. Karena karakteristik inilah maka Microcontroller sangat ideal untuk digunakan pada banyak aplikasi dengan pertimbangan biaya dan tempat yang terbatas. Dibawah ini adalah diagram blok dari Microprocessor dan Microcontroller.
Microcontroller For Embedded System
Microcontroller ataupun Microprocessor digunakan secara luas pada produk embedded system. Sebuah embedded system dikendalikan oleh Microcontroller internal. Secara umum, pada sebuah embedded system memiliki ROM Microcontroller yang difungsikan dengan tujuan khusus yang dibutuhkan oleh sistem. Contohnya adalah printer, karena processor hanya memerintahkan untuk satu tugas saja yaitu mencetak data. Contoh lainnya seperti keyboard, modem, sound card, mouse dll. Masing-masing perangkat diatas memiliki sebuah microprocessor yang melakukan hanya satu tugas saja.
PC Embedded Application Beda halnya dengan Personal Computer yang dapat digunakan untuk sejumlah aplikasi seperti pemrosesan kata, print server, video game, network server atau internet. Hal ini dikarenakan sebuah PC memiliki memori RAM dan sebuah sistem operasi yang dapat menjalankan perangkat lunak pada RAM. Sebuah PC dapat terdiri atau terhubung ke beberapa produk embedded system seperti keyboard, mouse, monitor dll, dimana masing-masing produk embedded tersebut memiliki sebuah prosesor yang berfungsi untuk satu tugas saja.
Criteria for choosing a Microcontroller 1) Harus memilih microcontroller yang sesuai dengan tugas dan kebutuhan sistem. Apakah memilih 8-bit, 16-bit atau 32-bit. Perlu juga dipertimbangkan : Speed Packaging (kemasan) : DIP (Dial Inline Package) atau QFP (Quad Flat Package)
DIP Package
Power Consumption Jumlah RAM dan ROM pada Chip
QFP Package
Jml Pin I/O dan timer pada chip Harga per unit
2) Seberapa mudah untuk mendapatkan produk-produk yang mendukung sebuah microcontroller seperti assembler, debugger, compiler Bahasa C, emulator, dan lain-lain. 3) Microcontroller dapat tersedia sekarang maupun masa yang akan datang
SECTION 2. OVERVIEW OF THE AVR FAMILY
History of The AVR Microcontroller
Arsitektur AVR pertama kali dirancang oleh 2 orang mahasiswa Norwegian Institute of Technology, yaitu Alf-Egil Bogen dan Vegard Wollan. Kemudian dikembangkan oleh ATMEL tahun 1996. Arsitektur AVR menggunakan arsitektur RISC (Reduced Instruction Set Computing). Kelemahan dari AVR adalah bahwa program yang telah dituliskan untuk satu jenis keluarga AVR tidak kompatibel dengan jenis keluarga yang lain, harus di recompile lagi sebelum di tuliskan ke AVR jenis lain.
AVR Features
Pada AVR dapat diberi fitur tambah seperti : ADC PWM USART SPI USB dll
1. AVR Microcontroller Program ROM
Pada microcontroller, ROM digunakan untuk menyimpan program, oleh karena itu maka ROM disebut sebagai Program ROM atau Code ROM. AVR adalah salah satu microcontroller pertama yang menggunakan on-chip Flash memory untuk menyimpan program,. Proses penghapusan data pada Flash memory jauh lebih cepat dibandingkan pada UV-EPROM. AVR memiliki kapasitas ROM sebesar 8MB, tp tidak semua jenis AVR memiliki kapasitas ROM sebesar itu, tp dapat bervariasi.
2. AVR Microcontroller Data RAM and EEPROM
Memori RAM digunakan untuk menyimpan data. AVR memiliki maksimum kapasitas RAM sebesar 64KB. RAM memiliki 3 bagian : 1. General Purpose Register (sejumlah 32 register) 2. Memori Input/Output (kapasitasnya berbeda-beda antar chip) 3. Internal SRAM (kapasitasnya berbeda-beda antar chip) Pada AVR juga terdapat EEPROM untuk menyimpan data penting yang tidak sering berubah-ubah.
3. Port Input/Output AVR dapat memiliki 3 sampai 86 pin I/O. Jumlah pin tergantung dari jumlah pin masing-masing kemasan AVR.
Karakteristik Beberapa keluarga AVR
1. AVR Mega XXX
Memori Program : 4 KB – 256 KB Kemasan : 28 – 100 pin Perangkat peripheral mahal Memiliki banyak perangkat intruksi
2. AVR Tiny XXX
Memori Program : 1 KB – 8 KB Kemasan : 8 – 28 pin Perangkat peripheral terbatas Perangkat intruksi juga terbatas
3. Special Purpose AVR Jenis ini merupakan mikrokontroler yang memiliki fungs khusus seperti : 1. USB controller 4. Zigbee 2. LCD controller 5. dan lain-lain 3. Ethernet controller