Arsitektur AVR ATmega32 Deskripsi Mikrokontroler ATmega32 Interupsi

atau program yang diisikan dengan menggunakan bahasa pemrograman tertentu. Informasi tersebut kemudian disimpan didalam memori. Data dalam memori dapat di keluarkan atau di edit sesuai dengan yang dibutuhkan. Aktuator adalah komponen penggerak yang jika dilihat dari prinsip penghasil geraknya dapat dibagi menjadi tiga bagian yaitu penggerak berbasis motor listrik motor servo, motor steper, motor DC dan sebagainya, penggerak pneumatik berbasis kompresi:udara, nitrogen dan penggerak hidrolik berbasis benda cair: minyak pelumas.

2.2. Mikrokontroler AVR ATmega32

AVR Alf and Vegard’sRiscProcessor merupakan seri mikrokontroler CMOS 8- bit yang diproduksi oleh Atmel berbasis arsitektur RISC Reduced Instruction Set Computer. Chip AVR yang digunakan untuk tugas akhir ini adalah ATmega32. Hampir semua instruksi dieksekusi dalam satu siklus clock dan mempunyai 32 register general- purpose , timercounter fleksibel dengan mode compare, interupsi internal dan eksternal, serial UART, programmable Watchdog Timer, dan power saving mode. AVR juga mempunyai ADC, PWM internal dan In-System Programmable Flash on-chip yang mengijinkan memori program untuk diprogram ulang [8].

2.2.1. Arsitektur AVR ATmega32

Mikrokontroler ATmega32 memiliki arsitektur sebagai berikut : a. Saluran IO sebanyak 32 buah, yaitu Port A, Port B, Port C dan Port D b. ADC 10 bit sebanyak 8 Channel c. Tiga buah timercounter yaitu Timer 0, Timer 1, dan Timer 2 d. Watchdog Timer dengan osilator internal e. SRAM sebanyak 512 byte f. Memori Flash sebesar 8 kb g. Sumber Interupsi internal dan eksternal h. Port SPI Serial Pheriperal Interface i. EEPROM on board sebanyak 512 byte j. Komparator analog k. Port USART Universal Shynchronous Ashynchronous Receiver Transmitter

2.2.2. Deskripsi Mikrokontroler ATmega32

Konfigurasi Pin Mikrokontroller ATmega32 dengan kemasan 40 pin DIP dual in- line package dapat dilihat pada Gambar 2.2. Untuk memaksimalkan performa dan paralelisme, AVR menggunakan arsitektur Harvard dengan memori dan bus terpisah untuk program dan data. Ketika sebuah instruksi sedang dikerjakan maka instruksi berikutnya diambil dari memori program[8]. Gambar 2.2. Konfigurasi Pin Mikrokontroler ATmega32[8] Mikrokontroler Atmega 32 memiliki konfigurasi Pin sebagai berikut: a. VCC power supply b. GND ground c. Port A PA7…PA0 Port A berfungsi sebagai input analog pada ADC analog digital converter . Port A juga berfungsi sebagai suatu Port IO 8-bit dua arah. d. Port B PB7…PB0 Port B adalah suatu Port IO 8-bit dua arah dengan resistor internal pull-up yang dipilih untuk beberapa bit. e. Port C PC7…PC0 Port C adalah suatu Port IO 8-bit dua arah dengan resistor internal pull-up yang dipilih untuk beberapa bit. f. Port D PD7...PD0 Port D adalah suatu Port IO 8-bit dua arah dengan resistor internal pull-up yang dipilih untuk beberapa bit. g. RESET Reset input h. XTAL1 Input Oscillator i. XTAL2 Output Oscillator j. AVCC adalah pin penyedia tegangan untuk Port A dan ADC. k. AREF adalah pin referensi analog untuk ADC.

2.2.3. Interupsi

Interupsi adalah suatu kondisi dimana mikrokontroler akan berhenti sementara dari program utama untuk melayani instruksi-instruksi pada interupsi kemudian kembali mengerjakan instruksi program utama setelah instruksi-instruksi pada interupsi selesai dikerjakan. Table 2.1 Hubungan PIN dan Interupsi Jenis interupt PIN pada Atemega 32 INT0 PORTD.2 INT1 PORTD.3 INT2 PORTB.2 ATmega32 menyediakan tiga interupsi eksternal yaitu, INT0, INT1, dan INT2. Masing- masing interupsi tersebut terhubung dengan pin ATmega32 seperti ditunjukan pada Tabel 2.1. Interupsi eksternal bisa dilakukan dengan memberikan logika 0 atau perubahan logika rissing edge dan falling edge pada pin interupsi yang bersangkutan[8].

2.2.4. TimerCounter