2.1.5.1 Memori Program
ATMega8535 memiliki kapasitas memori program sebesar 8 KByte yang terpetakan dari alamat 0000h
– 0000Fh di mana masing- masing alamat memiliki lebar data 16 bit. Sehingga organisasi memori
program seperti ini sering dituliskan dengan 4K x 16 bit. Memori program ini terbagi menjadi 2 bagian yaitu bagian program boot dan bagian
program aplikasi seperti terlihat pada Gambar 2.5. Jika kita tidak menggunakan fitur boot loader flash maka semua kapasitas memori
progam di atas dapat digunakan untuk program aplikasi. Tetapi jika kita menggunkan fitur boot loader flash maka pembagian ukuran kedua bagian
ini ditentukan oleh BOOOTSZ fuse.
Gambar 2.5 Peta Memori Program ATMega8535
2.1.5.2 Memori Data SRAM
ATMega8535 memiliki kapasitas memori data sebesar 608 byte yang terbagi menjadi 3 bagian yaitu register serbaguna, register IO dan
SRAM. 32 byte alamat terendah digunakan untuk register serbaguna yaitu R0-R31. 64 byte berikutnya digunakan untuk register IO yang digunakan
Universitas Sumatera Utara
untuk mengatur fasilitas seperti timercounter, interupsi, ADC, USART, SPI, EEPROM, dan port IO seperti Port A, Port B, Port C dan Port D.
Selanjutnya 512 byte di atasnya digunakan untuk memori data SRAM. Jika register IO di atas diakses seperti mengakses data pada
memori menggunakan isntruksi LD atau ST maka register IO di atas menempati alamat 0020
– 005F. Tetapi jika register-register IO di atas diakses seperti mengakses IO pada umumnya menggunakan isntruksi IN
atau OUT maka register IO di atas menempati alamat memori 0000h –
003Fh. Gambar 2.6 Menunjukkan peta memori data SRAM.
Gambar 2.6 Memori Data SRAM ATMega8535
2.1.5.3 Memori EEPROM
ATMega8535 memiliki memori EEPROM sebesear 512 byte yang terpisah dari memori program maupun memori data. Memori EEPROM ini
hanya dapat diakses dengan menggunakan register-register IO yaitu register EEPROM adress EEARH-EEARL, register EEPROM
Universitas Sumatera Utara
EEPROM Data EEDR dan register EEPROM Control EECR. Untuk mengakses memori EEPROM ini diperlukan seperti mengakses data
eksternal sehingga waktu eksekusinya relatif lebih lama bila dibandingkan dengan mengakeses data dari SRAM.
2.1.6 Interupsi