Bagian yang sangat penting dalam pemrograman chip mikrokontroler adalah
manajemen memori, karena memori dalam mikrokontroler sangat terbatas, berbeda
dengan komputer yang mempunyai bermega-mega bahkan giga byte memori, sehingga
harus dapat digunakan seefisien dan seefektif mungkin. Bahasa C diciptakan
untuk komputer berasitektur Von Neuman di mana bus memori data dan bus memori
program menyatu. Sedangkan AVR mempunyai
arsitektur harvard dimana bus memori
program dan bus memori data terpisah, sehingga dapat mengakses memori data dan
memori program dalam satu waktu.
3.1. Peta Memori
Hal pertama yang harus
diketahui dalam manajemen memori adalah peta memori . Di mana dalam peta
tersebut terkandung jenis memori dan kapasitasnya. Gambar peta memori AVR atMega
dan gambar tabel peta memori AVR atMega dapat dilihat pada gambar di bawah dan tabel di bawah.
Gambar di atas. Peta memori AVR atMega
Tabel peta memori AVR ATmega
Type
AVR
|
Flas
|
RAM
|
EEPROM
|
|||
F_END
|
Size,
KB
|
RAMEND
|
Size,
KB
|
E_END
|
Size,
KB
|
|
ATmega
8535
|
$0FFF
|
8
|
$025F
|
0.5
|
$1FF
|
0.5
|
ATmega
16
|
$1FFF
|
16
|
$045F
|
1
|
$1FF
|
0.5
|
ATmega
32
|
$3FFF
|
32
|
$085F
|
2
|
$3FF
|
1
|
Memori AVR Atmega terbagi tiga yaitu:
- Memori Flash
Adalah
memori ROM tempat kode-kode program berada. Kata flas menunjukan jenis ROM yang dapat ditulis dan dihapus
secara elektrik. Memori Flas
terbagi dua bagian yaitu :.
1.
Bagian aplikasi adalah bagian kode-kode program aplikasi berada.
2.
Bagian boot adalah bagian yang digunakan khusus untuk booting awal yang dapat diprogram untuk
menulis bagian aplikasi tanpa melalui programer
atau downloader, misalnya melalui
USART.
- Memori Data
Adalah
memori RAM yang digunakan untuk keperluan program. Memori data terbagi empat
bagian yaitu:
1. 32 GPR (General
Phurphose Register) adalah register khusus yang bertugas untuk membantu
eksekusi program ALU (Arithmatich Logic
Unit), dalam intruksi assembler setiap intruksi harus melibatkan GPR. Dalam
bahasa C biasanya digunakan untuk variabel global atau nilai balik fungsi dan
lain-lain yang dapat memperingan kerja ALU. Dalam istilah processor komputer
sehari-hari GPR dikenal sebagai “chace
Register”.
2. I/O register
dan Aditional I/O register adalah registern yang difungsikan khusus untuk
mengendalikan berbagai pheripheral dalam mikrokontrler seperti pin port, timer
atau counter, usart dan lain-lain. Register I/O dalam keluarga mikrokontroler
MCS51 dikenal sebagai SFR (Special
Function Register)
- Memori EEPROM
EEPROM
(Electrical Eraseable Programmable Read
Only Memmory) adalah satu dari tiga tipe memori pada AVR (dua lainnya adalah SRAM dan flash). Sifat EEPROM, tetap dapat menyimpan data
saat tidak ada suplay dan juga dapat diubah saat program sedang berjalan. Oleh
karena itu EEPROM sangat berguna jika sistem yang dibangun memerlukan
penyimpanan data meskipun suplai dimatikan.
Tidak ada komentar:
Posting Komentar