Lengan Robot DASAR TEORI

Port A berfungsi sebagai input analog pada AD Konverter dan port IO 8-bit dua arah. Port B, Port C, Port D adalah suatu port IO 8-bit dua arah dengan resistor internal pull-up yang dipilih untuk beberapa bit. Pada rangkaian reset, waktu pengosongan kapasitor dapat dihitung dengan persamaan 2.3. T = R x C 2.3

2.4.3. Organisasi Memori AVR ATmega32

Mikrokontroler ATmega32 memiliki 3 jenis memori yaitu memori program, memori data dan EEPROM. Ketiganya memiliki ruang sendiri dan terpisah. 2.4.3.1.Memori Program Kode program disimpan dalam flash memory, yaitu memori jenis non-volatile yang tidak akan hilang datanya meskipun catu daya dimatikan [7]. Dalam ATmega32 terdapat 8Kbyte On-Chip di dalam sistem Memory Flash Reprogrammable untuk penyimpanan program. Untuk keamanan perangkat lunak, flash memori dibagi menjadi dua bagian, yaitu boot program dan bagian aplikasi program [6]. 2.4.3.2.Memori Data Memori data adalah memori RAM Random Access Memory yang digunakan untuk keperluan program. Memori data terdiri dari 32 General Purpose Register GPR yang merupakan register khusus yang bertugas untuk membantu eksekusi program oleh Arithmetic Logic Unit ALU dan IO register dan additional IO register yang difungsikan khusus untuk mengendalikan berbagai peripheral dalam mikrokontroler antara lain pin, port, timercounter, USART . ATmega32 memiliki kapasitas memori data sebesar 608 Byte yang terbagi menjadi 3 bagian yaitu register serba guna, register IO dan SRAM [8].

2.4.4. 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 [9]. Tabel 2.1. Hubungan PIN dan Interupsi [9] Jenis interrupt PIN pada Atmega 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.

2.4.5. TimerCounter

Atmega 32 memiliki tiga modul timer yang terdiri dari dua buah timercounter 8 bit dan satu buah timercounter 16 bit. Ketiga modul ini dapat diatur dalam mode yang berbeda- beda secara individu dan tidak saling mempengaruhi satu sama lain. Selain itu semua timercounter juga dapat difungsikan sebagai pencacahan waktu seperti pada jam digital maupun untuk menghasilkan sinyal PWM Pulse Width Modulation yakni sinyal kotak dengan frekuensi dan duty cycle yang nilainya bisa diatur [7]. 2.4.5.1.Timercounter0 Timercounter 0 merupakan modul timercounter 8 bit dengan fitur sebagai berikut : a. timercounter 1 kanal. b. Auto reload yaitu timer akan dinolkan kembali saat match compare. c. Dapat menghasilkan pulsa PWM pulse width modulation dengan glitch free. d. Frequency generator. e. External event counter. f. Prescalar 10 bit untuk timer. g. Membangkitkan interupsi saat timer overflow dan atau match compare.