MIKROKONTROLLER ATMEGA 8535
Mikrokontroler adalah IC yang dapat diprogram berulang kali, baik ditulis atau dihapus (Agus Bejo, 2007). Biasanya digunakan untuk pengontrolan otomatis dan manual pada perangkat elektronika.
Beberapa tahun terakhir, mikrokontroler sangat banyak digunakan terutama dalam pengontrolan robot. Seiring perkembangan elektronika, mikrokontroler dibuat semakin kompak dengan bahasa pemrograman yang juga ikut berubah. Salah satunya adalah mikrokontroler AVR (Alf and Vegard’s Risc processor) ATmega8535 yang menggunakan teknologi RISC (Reduce Instruction Set Computing) dimana program berjalan lebih cepat karena hanya membutuhkan satu siklus clock untuk mengeksekusi satu instruksi program. Secara umum, AVR dapat dikelompokkan menjadi 4 kelas, yaitu kelas ATtiny, keluarga AT90Sxx, keluarga ATmega, dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas adalah memori, peripheral, dan fungsinya. Dari segi arsitektur dan instruksi yang digunakan, mereka bisa dikatakan hampir sama.
Mikrokontroler AVR ATmega8535 memiliki fitur yang cukup lengkap. Mikrokontroler AVR ATmega8535 telah dilengkapi dengan ADC internal, EEPROM internal, Timer/Counter, PWM, analog comparator, dll (M.Ary Heryanto, 2008). Sehingga dengan fasilitas yang lengkap ini memungkinkan kita belajar mikrokontroler keluarga AVR dengan lebih mudah dan efisien, serta dapat mengembangkan kreativitas penggunaan mikrokontroler ATmega8535.
Fitur-fitur yang dimiliki oleh mikrokontroler ATmega8535 adalah sebagai berikut:
1. Saluran I/O sebanyak 32 buah, yaitu port A, port B, port C, dan port D.
2. ADC internal sebanyak 8 saluran.
3. Tiga buah Timer/Counter dengan kemampuan pembandingan.
4. CPU yang terdiri atas 32 buah register.
5. SRAM sebesar 512 byte.
6. Memori Flash sebesar 8 kb dengan kemampuan Read While Write.
7. Port antarmuka SPI
8. EEPROM sebesar 512 byte yang dapat diprogram saat operasi.
9. Antarmuka komparator analog.
10. Port USART untuk komunikasi serial.
11. Sistem mikroprosesor 8 bit berbasis RISC dengan kecepatan maksimal 16 MHz.
12. Dan lain-lainnya.
2.6.1 Konstruksi ATmega8535
Mikrokontroler ATmega8535 memiliki 3 jenis memori, yaitu memori program, memori data dan memori EEPROM. Ketiganya memiliki ruang sendiri dan terpisah.
a. Memori program
ATmega8535 memiliki kapasitas memori progam sebesar 8 Kbyte yang terpetakan dari alamat 0000h – 0FFFh dimana masing-masing alamat memiliki lebar data 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu bagian program boot dan bagian program aplikasi.
b. Memori data
ATmega8535 memiliki kapasitas memori data sebesar 608 byte yang terbagi menjadi 3 bagian yaitu register serba guna, register I/O dan SRAM. ATmega8535 memiliki 32 byte register serba guna, 64 byte register I/O yang dapat diakses sebagai bagian dari memori RAM (menggunakan instuksi LD atau ST) atau dapat juga diakses sebagai I/O (menggunakan instruksi IN atau OUT), dan 512 byte digunakan untuk memori data SRAM.
c. Memori EEPROM
ATmega8535 memiliki memori EEPROM sebesar 512 byte yang terpisah dari memori program maupun memori data. Memori EEPROM ini hanya dapat diakses dengan menggunakan register-register I/O yaitu register EEPROM Address, register EEPROM Data, dan register EEPROM Control. Untuk mengakses memori EEPROM ini diperlakukan seperti mengakses data eksternal, sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakses data dari SRAM.
ATmega8535 merupakan tipe AVR yang telah dilengkapi dengan 8 saluran ADC internal dengan fidelitas 10 bit. Dalam mode operasinya, ADC ATmega8535 dapat dikonfigurasi, baik secara single ended input maupun differential input. Selain itu, ADC ATmega8535 memiliki konfigurasi pewaktuan, tegangan referensi, mode operasi, dan kemampuan filter derau yang amat fleksibel, sehingga dengan mudah disesuaikan dengan kebutuhan ADC itu sendiri.
ATmega8535 memiliki 3 modul timer yang terdiri dari 2 buah timer/counter 8 bit dan 1 buah timer/counter 16 bit. Ketiga modul timer/counter ini dapat diatur dalam mode yang berbeda secara individu dan tidak saling mempengaruhi satu sama lain. Selain itu, semua timer/counter juga dapat difungsikan sebagai sumber interupsi. Masing-masing timer/counter ini memiliki register tertentu yang digunakan untuk mengatur mode dan cara kerjanya.
Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial syncrhronous kecepatan tinggi yang dimiliki oleh ATmega8535. Universal Syncrhronous and Asyncrhronous Serial Receiver and Transmitter (USART) juga merupakan salah satu mode komunikasi serial yang dimiliki oleh ATmega8535. USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan modul-modul eksternal termasuk PC yang memiliki fitur UART.
USART memungkinkan transmisi data baik secara syncrhronous maupun asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART. Pada ATmega8535, secara umum pengaturan mode syncrhronous maupun asyncrhronous adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada mode asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode syncrhronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan demikian, secara hardware untuk mode asyncrhronous hanya membutuhkan 2 pin yaitu TXD dan RXD, sedangkan untuk mode syncrhronous harus 3 pin yaitu TXD, RXD dan XCK.

Gambar 2.5 Konfigurasi Pin Atmega 8535
Konfigurasi pin ATmega8535 dengan kemasan 40 pin DIP (Dual Inline Package) dapat dilihat pada gambar 2.1. Dari gambar di atas dapat dijelaskan fungsi dari masing-masing pin Atmega8535 sebagai berikut:
1. VCC merupakan pin yang berfungsi sebagai masukan catu daya.
2. GND merukan pin Ground.
3. Port A (PortA0…PortA7) merupakan pin input/output dua arah dan pin masukan ADC.
4. Port B (PortB0…PortB7) merupakan pin input/output dua arah dan dan pin fungsi khusus, seperti dapat dilihat pada tabel di bawah ini.
Tabel 2.6 Fungsi Khusus Port B
Pin | Fungsi Khusus |
PB7 | SCK (SPI Bus Serial Clock) |
PB6 | MISO (SPI Bus Master Input/ Slave Output) |
PB5 | MOSI (SPI Bus Master Output/ Slave Input) |
PB4 | SS (SPI Slave Select Input) |
PB3 | AIN1 (Analog Comparator Negative Input) OC0 (Timer/Counter0 Output Compare Match Output) |
PB2 | AIN0 (Analog Comparator Positive Input) INT2 (External Interrupt 2 Input) |
PB1 | T1 (Timer/ Counter1 External Counter Input) |
PB0 | T0 T1 (Timer/Counter External Counter Input) XCK (USART External Clock Input/Output) |
2. Port C (PortC0…PortC7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti dapat dilihat pada tabel dibawah ini.
Tabel 2.7 Fungsi Khusus Port C
Pin | Fungsi khusus |
PC7 | TOSC2 ( Timer Oscillator Pin2) |
PC6 | TOSC1 ( Timer Oscillator Pin1) |
PC5 | Input/Output |
PC4 | Input/Output |
PC3 | Input/Output |
PC2 | Input/Output |
PC1 | SDA ( Two-wire Serial Buas Data Input/Output Line) |
PC0 | SCL ( Two-wire Serial Buas Clock Line) |
6. Port D (PortD0…PortD7) merupakan pin input/output dua arah dan pin fungsi khusus, seperti yang terlihat pada tabel dibawah ini.
Tabel 2.8 Fungsi Khusus Port D
Pin | Fungsi khusus |
PD7 | OC2 (Timer/Counter Output Compare Match Output) |
PD6 | ICP (Timer/Counter1 Input Capture Pin) |
PD5 | OC1A (Timer/Counter1 Output Compare A Match Output) |
PD4 | OC1B (Timer/Counter1 Output Compare B Match Output) |
PD3 | INT1 (External Interrupt 1 Input) |
PD2 | INT0 (External Interrupt 0 Input) |
PD1 | TXD (USART Output Pin) |
PD0 | RXD (USART Input Pin) |
gan ane mau nanya ,,
BalasHapuskalau program buat terang redup led gimana gan ?
maksih banyak sudah share
BalasHapussolder uap