2.4.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 32 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.4.2. Deskripsi Mikrokontroler ATmega32
Konfigurasi Pin Mikrokontroller ATmega32 dengan kemasan 40 pin DIP dual in- line package
dapat dilihat pada Gambar 2.5. 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 [6].
Gambar 2.5. Konfigurasi Pin Mikrokontroler ATmega32 [6]
Mikrokontroler ATmega32 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.
Port A berfungsi sebagai input analog pada AD Konverter ADC 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.9 [7].
T = R x C 2.9
2.4.3. Organisasi Memori AVR ATmega32
Arsitektur AVR mempunyai dua ruang memori utama, yaitu ruang memori data dan memori program. ATmega32 juga memiliki fitur EEPROM Memori untuk
penyimpanan data [6].
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].