PIC EEPROM kendiliğinden silinir mi?

Başlatan berkay_design, 28 Eylül 2015, 18:48:16

berkay_design

Geçenlerde 16f628a ile bir devre yapmıştım. Enerji kesildiğinde hafızası silinmesin diye EEPROM a kayıt ediyordum. 0-10 arası değeri kaydediyordum ve bu kayda göre led yakıyordum. Butonlarla sayıyı arttırıp azaltıyordum. Mesela sayı 1 iken 1 led 7 iken 7 led yanacak şekilde basit bir devre. Genelde 10 led yakıyordum fakat bugün devreyi çalıştırdığımda hiç led yanmıyordu. Tuşlara bastığımda arttırabildim yazılımda yada devrede bir sıkıntı yok ama EEPROMdaki değer durduk yere neden sıfır oldu anlayamadım. Buna nedeni ne olabilir?

t2

#1
Programda mantık hatası yoksa, bence bu sorun, programın istenmeyen zamanda istenmeyen konumdan çalışması ile oluyor. Elektrik kesilmesi, röle çekmesi gibi  durumlarda Program rastgele bir konumdan başlarsa, bu konumdan sonra sizin  EEPROM yazma islemleri yapılıyorsa, böyle bir sorun olabilir.

Hatta program kendisini yani program hafızasını silebilecek yapıdaysa, rastgele konumdan  başlama durumunda pic programı bozulabilir. Sorunu gidermek için, program kendini güncellemeyecek  ise, ilgili config bitlerinden hafıza yazma izni kapatılır.

BLİZZARD

Program algoritmasını ekle bir bakalım...  Yoksa eepromda bilgi 40yıldan fazla sürede kalır.

ipek

forumda tartışılmıştı,rutin olarak aynı adrese değer yazılması ,tabiki bu çok sayıda olmalı ,eeprom bozuluyordu.

Erol YILMAZ

Kodunda bariz bi problem yok ise bence çipin sahte

berkay_design

k=Eeprom_Read(0x07);
if(arttir==1 && k<10)
{
k++;
Eeprom_Write(0x07,k);
}
if(azalt==1 && k>0)
{
k--;
Eeprom_Write(0x07,k);
}

Yazılımda sıkıntı yok gibi. Sürekli yazma işlemi de yok doğrusu. Sürekli okuma yapılıyor, tuşa basıldığında yazma işlemi oluyor. Bir de bu sahte çipleri ben de duymuştum. Nasıl ayırt edilebilir ki?

mehmet

Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr
https://creativecommons.org/licenses/by/4.0/deed.tr "CC BY"


baran123

Alıntı Yap
P CON Register (Güç Kaynağı Kontrol Kaydedicisi)

Güç kontrol kaydedicisi PCON, yazılımda ve reset durumlarında kullanılır. Reset durumları? devrenin dışardan MCLR ile, gerilim ya da akımın aşırı düşme ve yükselmesi BrownOut, Watch Dog Timer ve son olarak Power on reset durumlarında kullanılabilir. BOR biti, Power on reset'te bilinemez. Reset sonrasında b'1' yapılmalıdır ki, bir sonraki BOR durumunu öğrenebilsin.

pic16f877-19.PNG
Bit 7-2:
Unimplemented: Bit kullanılmaz 0 okunur
Bit 1: POR: Power On Reset durumu biti
1= POR durumu yok
0= POR dolu (yazılımda set edilmeli)
Bit 0: BOR: Bus collision kesme uyarı biti
1= BOR durumu yok
0= BOR durumu var (yazılımda set edilmeli)

F.T

mehmet hocam selamlar.Yanlış anlaşılmasın.BOR un eeprom üzerine ne gibi etkisi vardır.Dikkatimi çekti.
Hakk şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

mehmet

Sistemi besleyen güç kaynağı enerjisi kesilince
besleme kondansatörü hala devremizi beslemeye
devam etmektedir. Belki 10mS. belki 1 Sn.
İşte mcu reset eşiği gerilimine kadar serbest
çalışmaya devam ediyor. Bu arada anlamsız
şeyler oluyor. (Bu kısmı gerçekten bilmiyorum.)
Eeprroma garip değerler yazılıyor. Hatta eeprom
fonksiyonu yazılımınızda olmasa bile.
Bu sorunu BOR un en yüksek değerinde (mcu'
ya göre değişmekte) kullanarak çözüyorum.
Bu en çok, gücü epey yüksek olan besleme
kaynaklarında oluşmakta olduğunu gözlemledim.
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr
https://creativecommons.org/licenses/by/4.0/deed.tr "CC BY"

F.T

mehmet hocam değerli tecrübenizi paylaştığınız için teşekkür ediyorum.Gerçekten önemli bir konuymuş.
Hakk şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.

mehmet

Estağfurullah. Bir yerlere bir nokta koyabildiysek
ne mutlu.
Olan olmuştur,
olacak olan da olmuştur.
Olacak bir şey yoktur.
---------------------------------------------
http://www.mehmetbilgi.net.tr
https://creativecommons.org/licenses/by/4.0/deed.tr "CC BY"

berkay_design

Gerçekten tecrübe kadar eğitici bir şey yok. Ben de teşekkür ediyorum. Kod araştırmalarına başlayayım en iyisi.

F.T

Peki mehmet hocam en iyi mclr devresi nasıl olmalı.
Hakk şerleri hayr eyler Zannetme ki gayr eyler Ârif anı seyreyler Mevlâ görelim neyler Neylerse güzel eyler.