Dahili Eeprom

Başlatan Serk@n, 24 Haziran 2013, 18:29:29

Serk@n

Selamun Aleyküm;

Arkadaşlar Pic'in dahili eepromunu kullandığımız zaman bilgi hafızada kalmıyor mu? Mesela pic'in 5V enejisini kessek oradaki bilgi siliniyor mu? (Pic16F877A kullanıyorum. )
Bildiklerimize göre hareket edersek bilmediklerimizi de öğrenebiliriz.

pwm.c

_/\/\/\_ -[ı- -ı>|- -|ı|ı|ı- -ı< -||- -l[]l-

Serk@n

Bildiklerimize göre hareket edersek bilmediklerimizi de öğrenebiliriz.

Serk@n

Pardon...
"Ram üzerine tekrar tekrar yazmak mümkünken, EEPROMlar üzerlerinde bulunan ince yalıtkan madde zarar görene dek yazma ve silme işlemi yapabilmekle sınırlandırılmıştır." (https://tr.wikipedia.org/wiki/EEPROM)

yani hafızada kalır mı? Fakat Pic derslerini okurken aşağıdaki ifade ile bilgi sürekli hafızada kalmıyor diye anladım. Doğru mu anlıyorum?

Pic Dersleri - 9

Burada dikkat edilecek husus şudur. Pic' i her çalıştırdığınızda bu bilgilerin ilgili hafıza birimlerine yeniden yazılacak olmasıdır. Dolayısıyla şifre girişi gibi işlemlerde şayet şifreyi program içinden değiştirmiş iseniz ve pici yeniden çalıştırırsanız şifreniz tekrar eskiye dönecektir.

Aslında yeri gelmişken bu gibi konuları aşmanın bir tekniğini belirtmek isterim. Ancak bunu diğer hafıza komutlarını inceledikten sonra açıklayacağım.

Bildiklerimize göre hareket edersek bilmediklerimizi de öğrenebiliriz.

est32

Eeprom ile ram'i karıştırmışsın sanıyorum. Ram elektrik kesildiğinde silinir, fakat eeprom farklıdır.
eeproma yazdığın bilgiyi elektrik olsun olmasın onlarca yıl boyunca saklayabilirsin ve istediğin anda okuyabilirsin.
Bahsedilen denetleyicinin kataloğunda eepromun 1 milyon kez yazılıp silinebileceği yazıyor. Okumada ise sınır yok
Aynı zamanda bu denetleyicinin 256 byte büyüklüğünde eeprom belleği var. Bu bellekte istersen 0-255 aralığında 256 adet, istersen 0-65535 aralığında 128 adet sayı tutabilirsin ve yıllarca sen müdahale edinceye dek hiç bişey olmadan oracıkta bekler durur.
Ne demek istediğim sanırım anlaşılmıştır.
sadece dahili değil harici eepromlar da vardır bunlar 24Cxx ve 93Cxx diye daha çeşitleri var.
TV de her kanal değiştirdiğinde, sesi her açıp kapadığında yaptığın ayarlar nerede saklanıyor dersin, tv nin fişini çekince kanallar siliniyor mu???

Serk@n

Çok teşekkür ederim cevabımı aldım.

Fakat merak ettiğim  9. Derste bahsedilen olay nedir?

Yani şifreli kilit sisteminde şifrenin silinmesi...
Bildiklerimize göre hareket edersek bilmediklerimizi de öğrenebiliriz.

est32

o kısmı kopyalayıp yapıştırır mısın buraya, yanlış anladığın bir yer var sanırım.

Serk@n

Pic Dersleri - 9

EEPROM VE SENSÖR KULLANIMI Bu dersimizde Pic ile birlikte dışarıdan bağlı hafıza ünitelerinin kullanılmalarını inceleyeceğiz. Ayrıca pic ile birlikte kullanabileceğimiz bazı sensörler 'in haberleşme sistemlerini inceleyeceğiz.

Önce Eeprom Kullanımına bir göz atalım.

Normal olarak sıklıkla kullandığımız pic modellerinde flash tipi eeprom bulunmaktadır. Ancak bazen kendi hafızlarının yetmediği durumlarda pic ile birlikte dışarıdan bağlı hafıza üniteleri kullanılır.

Önce pic' in kendi eeprom' u ile nasıl haberleşiyoruz biraz inceleyelim sonra harici eeprom konusuna gireceğiz.

Pic' in dahili eepromu' nun kullanımı ile ilgili birkaç komut var öğrenmeniz gereken. Bunların başında ;

DATA @konum, data, data, data ......

Komutu gelmektedir. Data, pic' in programlanması esnasında hafızasının belirli konumlarına önceden belirli olan sabit bazı bilgilerin yazılması için kullanılır. Örneğin şifre kullanan bazı programlarda ilk (default ) şifrenin girilmesi bu yolla yapılır.

Komutun ilk parametresi @Konum ilk bilginin yazılacağı eeprom adresine aittir. Şayet bilgiler birbirini takip eden hafıza adreslerine yazılacak ise her seferinde adres verilmesi gerekmez. Bir kere başta adres verirsiniz sonra yazılacak bilgileri aralarına virgül koyarak sıralarsınız.

Burada dikkat edilecek husus şudur. Pic' i her çalıştırdığınızda bu bilgilerin ilgili hafıza birimlerine yeniden yazılacak olmasıdır. Dolayısıyla şifre girişi gibi işlemlerde şayet şifreyi program içinden değiştirmiş iseniz ve pici yeniden çalıştırırsanız şifreniz tekrar eskiye dönecektir.
Bildiklerimize göre hareket edersek bilmediklerimizi de öğrenebiliriz.

est32

bi yanlış tuşa bastım yarım saat boyunca yazdığım şeylerin hepsi silindi, gel de delirme...
Ayrıca bu kısım çok kısıtlı bir alıntı olmuş bu kısımda bahsedilen şey;

iki tür eeproma yazma vardır. Birincisi programlama esnasında yazmadır ki bu sadece pic programlanırken eeproma yazar. Bu nedenle pic kapatılıp açılsada bu komutun etkisi olmaz bu komut sadece pic programlanırken çalışır. örneğin şifreli kilittte ilk şifre buradan verilir ki bu ilk şifre sadece programlama esnasında yazılır.

diğeri de program içinde kullanılan WRITE diye başlayan komuttur. bu komutta pic çalışırken eeproma yazar. pic programı çalıştırırken bu komutla karşılaştığı an eeproma o bilgiyi yazar.
eğer programın ilk başlangıcında bu komut verilirse(WRITE) pic programa her girişte,yani her açılışta bu komutu çalıştırarak oradaki veriyi yazar.
Eğer şifreli kilit için bunu kullanırsan program her açılışta bu şifreyi eeproma yazar. bu nedenle sonradan şifreyi istediğin kadar değiştir, faydası yok.

Serk@n

Konuyu açıklamalarınız sayesinde anladım... Çok teşekkür ederim.

Silinen bilgileriniz için ben de üzüldüm. Çünkü bilgi çok kıymetli birşey...

Ben de başıma gelenleri anlatayım:

Ben tamirciyim, dolayısıyla eepromların TV'de işlevini biliyorum. Pic'lerle yakınlarda tanıştım. Bir kaç led çalışmalarından sonra bir kuluçka makinası yapmayı becerebildim.
Ete Hocamın dersleri sayesinde tabi... Fakat 9. Dersi yanlış anladığım için (yani dahili eepromların, harici eepromlardan farklı olarak enerji kesildiğinde bilgilerin silindiğini sandığımdan) pic'in enerjisini kesmemek için li-ion şarj devresini yaptım ve elektrik kesildiğinde pic'e enerji verecek şekilde devreye uyarladım. Tam oldu derken 7805 yerine 7808'i devreye yanlışlıkla bağlayarak pic'i bozmayı başardım :) Sonra devreyi yeniden yapayım derken bir yerlerde yanlış yaptığımı hissettim.
"Ya, biz zaten geçici bilgileri 'VAR' komutuyla veriyoruz, o zaman dahili eeproma ne ihtiyaç var?" dedim ve dün siteye üye oldum.

İnsan bir şeylere çaba gösterince, o konuda sıkıntı çekince anlatılanları hemen anlıyor.

Tekrar teşekkür ederim. Daha çok sorularım var, tekrar görüşmek üzere...   
Bildiklerimize göre hareket edersek bilmediklerimizi de öğrenebiliriz.

est32

o soruların bazılarını şimdiden cevapladım bile.
sor ki öğrenebilesin,kolay gelsin...

Serk@n

Eyvallah, hemen bakıyorum.
Bildiklerimize göre hareket edersek bilmediklerimizi de öğrenebiliriz.

BİDİL

Dahili eeproma kayıt edilen bir byte değişkenini okumada herhangi bir sınır yok iken yazmada bir sınır varmıdır?. Mesela Sayı isimli bir byte değişkenini eepromun 0.bitin üstüne  kaç kez yazabiliriz.

est32

Alıntı yapılan: BİDİL - 16 Ağustos 2013, 16:44:17
Dahili eeproma kayıt edilen bir byte değişkenini okumada herhangi bir sınır yok iken yazmada bir sınır varmıdır?. Mesela Sayı isimli bir byte değişkenini eepromun 0.bitin üstüne  kaç kez yazabiliriz.
bunların hepsi datasheetlerde yazıyor. çok aramaya da gerek yok, işlemcinin özelliklerinin belirtildiği ilk sayfalarda bulunabilir.
microchip ürünleri genelde flash program belleği 100 bin defa, eeprom belleği ise 1 milyon kez yazılabilir.
Bu nedenle programda sürekli yazma yapmamak gerek, sadece gerekli olduğu zamanlarda eeproma bilgi yazılmalıdır. Okumada herhangi bir sınır yoktur istediğiniz kadar okuyabilirsiniz.

ete

Bir milyon kez yazma size çok gelebilir. Ama bir programda sayac değerini sürekli kayıt eden bir sistemin 1 saniyede en azından 100 defa sayac değer değişikliği yapabileceğini ve 10 sn de 1000 defa yazma yapacağını unutmayın. 60 sn sonunda yazılan adet 6000 ve 60 sn (1 dak) sonunda yazılan miktarın 360.000 adede ve yaklaşık 4 dakika içinde eprom eprom yazma limitine ulaşılacağını unutmayın. Bu nedenle sürekli eproma yazıp okuyarak işlem yapmaktan kaçının. Yalnızca çok gerekli olduğu zaman yazın.

Ete

Powered by EzPortal