PIC Mikrodenetleyicileri Bellek Yapısı

Güncelleme 16/08/2024

PIC mikrodenetleyicilerinde genellikle üç hafıza bulunmaktadır. Bunlar program belleği, veri belleği ve EEPROM belleğidir.

Program Belleği

Program belleği program komutlarının tutuldu hafıza türüdür. Bu hafıza FLASH Bellek yapısındadır. Yani defalarca silinip tekrar programlanabilir. Ayrıca enerji kesildiğinde içindeki veriler saklanmaktadır. PIC16F877 denetleyicisinin 8K (8*1024=8192) program belleği mevcuttur. Ve bu denetleyicinin kelime boyutu 14 bittir. Yani PIC16F877 denetleyicisi 8192 adet 14bitlik komutları hafızasında saklayabilmektedir. PIC16F877 denetleyicisinin yanda verilen memory haritasında görebileceğiniz gibi 000Fh-1FFFh adresleri arası On-Chip Program memory olarak ayrımıştır. Bu değer de 8192 adet adres yapmaktadır.

Mikrodenetleyicilerde adreslere erişim program counter (PC) tarafından yapılmaktadır. PIC16F877A denetleyicisinde 13bitlik PC mevcutken PIC18F4550 denetleyicisinde 21bitlik bulunmaktadır. Denetleyicilerde adreslemeyi PC yapmaktadır. PIC16F877A denetleyicisinde 2^13= 8192 adresleme yapılır. PIC18F4550 denetleyicisinde ise 2^21=2.097.152 yapar bu da 2MB gibi bir hafızanın adreslenmesi demektir. Ancak PIC18F4550 denetleyicisinin 32KB hafızası mevcuttur. Kalan kısımda okuma yapılmamaktadır. Yine yandaki PIC18F4550 denetleyicisinin memory mapine baktığımızda 200000h-8000h adresleri arasında okuma yapılamamaktadır. Dolayısıyla denetleyicinin On-Chip Program Memory’si 0000h-7FFFh arasında (32kB) olmaktadır.

Veri Belleği

Veri belleği (Data Memory) denetleyicide bulunan genel ve özel amaçlı kaydedicilerin bulundu hafızadır. RAM bellek yapısındadır. Dolayısıyla elektrik kesildiği zaman veri belleğinde tutulan verilen kaybolmaktadır. Veri belleklerinin genel amaçlı kaydedicilerinde program içinde kullanılan değişkenlerin değerleri tutulur. Örneğin int a=1 gibi . Özel amaçlı kaydedicilerin de ise bir portun durumu giriş mi çıkış mı olacağı gibi bilgiler saklanır.

Yanda PIC16F877 denetleyicisinin data memory map’i verilmiştir. Burada herbirinde 128 adet kaydedici olan 4 adet sayfa görülmektedir. Toplamda bulunan 512 adet kaydedicinin 368 tanesi genel amaç için tahsis edilmiştir, diğerleri ise özel amaçlar için kullanılmaktadır.

EEPROM Belleği

PIC mikrodenetleyicilerinin çoğunda bulunan EEPROM bellek ihtiyaç durumlarında bilgilerin yazılıp okunduğı hafıza türüdür. Elektrik beslemesi kesildiğinde içerisinde saklanan veriler silinmez. Bir nevi bigisayarlarınızda kullanığınız hard disk gibi düşünebilirsiniz. EEPROM, elektrikle silinebilen programlanabilir romlardır. Denetleyici içerisinde dahili bulunan EEPROM olduğu gibi gerekli olursa harici olarak da dışardan EEPROM bağlanabilmektedir. PIC16F877 denetleyicisinde 8 bit formatında 128byte, PIC18F4550 denetleyicisinde de 8bit formatında 256byte EEPROM bellek mevcuttur.Örneğin aşağıdaki resimde görüldüğü gibi denetleyicinin internal EEPROM’u yeterli gelmemiş ve dışardan 2 adet external EEPROM sisteme dahil edilmiştir.

Yazar: Ali Celal

- Elektronik Mühendisi
- E.Ü. Tıp Fakültesi Kalibrasyon Sorumlusu Test kontrol ve kalibrasyon sorumlu müdürü (Sağ.Bak. ÜTS)
- X-Işınlı Görüntüleme Sistemleri Test Kontrol ve Kalibrasyon Uzmanı (Sağ.Bak.)
- Usta Öğretici (MEB)
- Hatalı veya kaldırılmasını istediğiniz sayfaları diyot.net@gmail.com bildirin