Picle Harici başka bir picin eeprom programı nasıl?

Başlatan cevat, 26 Kasım 2008, 13:00:37

cevat

Picle harci başka bir Picin sadece eepromundaki bilgiler değiştirebilirmiyiz?

OG

2 pici haberleştirerek yapabilirsin. Örneğin Serout/Serin komutu ile.

Haberleşmede eeprom adresini ve yüklenecek bilgiyi diğer pic e verir ve bunları aşağıdaki gibi bir komutla eeprom alanına yazabilirsin.

EWRITE Adres , [ bilgi ]
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Tagli

Hedef PIC'i programlama moduna sokarak sadece EEPROM'a yazmak mümkün olabilir mi? Yoksa programlama moduna girince program hafızasının da mı yazılması gerekir?
Gökçe Tağlıoğlu

cevat

OG hocanın dediği gibi Serout/Serin  komutlarıyla her iki tarafdaki pice program yapmak gerekiyor sanırım.
Sadece program görevini yapan Pice program yazarak Hedef Picin eeprom bilgisi değiştirilebilir mi?

Tagli

Alıntı yapılan: "cevat"OG hocanın dediği gibi Serout/Serin  komutlarıyla her iki tarafdaki pice program yapmak gerekiyor sanırım.
Sadece program görevini yapan Pice program yazarak Hedef Picin eeprom bilgisi değiştirilebilir mi?
Dediğim gibi, bunu yapabilmek için ilgili bacağa programlama voltajı (12-14 V civarında) verip hedef PIC'i programlama moduna sokmak gerekir. LVP (Low Voltage Programmig) destekleyen PIC'lerde programlama voltajı düşük seviyede olduğu için 12 V'a çıkmaya da gerek kalmayacaktır (eğer bu özellik daha önceden ayarlanmışsa). Daha önceki mesajımda, sadece EEPROM'a yazılıp yazılamayacağını sormuştum, şimdi biraz araştırma yaptım, anladığım kadarıyla bu mümkün. Bu belge konuyla ilgili fikir verecektir. Ancak ayrıntılar her PIC için değiştiğinden, kullanılan PIC ile ilgili belgeye bakılması gerekir.
Gökçe Tağlıoğlu

mech

icprog türü programlayıcılarda program all,program eeprom gibi seçenekler olduğunu hatırlıyorum. Bu sayede sadece EEPROM progralanabilir diye düşünüyorum, tabi eeprom Write Protect kapalı ise.
Bilginin Efendisi Olmak İçin Çalışmanın Kölesi Olmak Şarttır

Tagli

Alıntı yapılan: "mech"icprog türü programlayıcılarda program all,program eeprom gibi seçenekler olduğunu hatırlıyorum. Bu sayede sadece EEPROM progralanabilir diye düşünüyorum, tabi eeprom Write Protect kapalı ise.
Doğru. Bu başlıkta konuşulması üzerine konuyu biraz araştırmıştım. EEPROM koruması varsa kaldırmak için PIC'i tamamen silmek gerekiyor, ki bunun için de özel bir komut var.

Benim anlamadığım kısım EEPROM'a verinin nasıl yazılacağı. Bunun için bir komut var ama adres ayarının nasıl yapılacağını anlamadım. Mesela konfigürasyon bitlerini ayarlamak için başka bir komut çalıştırılıyor ve adres sayacı bu alanın başına ayarlanıyor (bahsettiğim komut ile), sonra da program hafızasına yazma komutuyla yazma işlemi gerçekleştiriliyor. Ama EEPROM için böyle bir adres sıfırlama komutu yok. Sadece EEPROM'a yazmak için özel bir komut var.

Tahminime göre EEPROM'a yazmak için adres sayacı 0'da iken EEPROM'a yazma komutunu işletmek gerekiyor. Bu varsayım JDM ile olan gözlemlerime de uyuyor: Programlama işi 3 bölümde yapılıyor ve her bölümden sonra cihaz üzerindeki LED kısa bir süre için sönüp tekrar yanıyodu, ki bence bu programlama modundan çıkılıp yeniden girildiğinin göstergesi. Bu şekilde EEPROM'a yazmak için gerekli olan 0 adresine de geçilmiş oluyor. Elbette yazılıma göre de iş değişebilir. Ben ic-prog kullanıyorum.

@cevat, çalışmalarında ilerleme kaydettin mi? Bu arada MSN'deki konuşmamızda bahsetmeyi unutmuştum (aslında bilmiyordum) burda yazayım: Programlama işi için 12 V yeterli değilmiş. 12-14 aralığı PIC modeline göre değişiyor galiba, gerçi bazı yeni PIC'lerde 6'ya kadar düşebiliyormuş. Sanırım senin 13 V kullanman gerekiyor.

Bu arada aklıma bir soru daha takıldı ki aslında bunu daha önceden sormam gerekiyordu: @cevat, eğer sakıncası yoksa neden bir PIC'in EEPROM'una dışardan erişmek istediğini anlatabilir misin? Belki de buna o kadar da gerek yoktur... Eğer uygulamanı anlatırsan alternatif çözümler de önerebiliriz belki.
Gökçe Tağlıoğlu

OG

Program hafızasına yazmak için (bunu destekleyen piclerde) harici yüksek voltaja gerek yok. Örneğin 16F819 u inceleyin. PIC çalışırken bu işlem gerçekleştirilebilir.
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

Tagli

@OG hocam, bahsettiğin şey PIC'in kendi program hafızasını değiştirebilme özelliği ise sanırım bu arkadaşın işine yaramaz. Çünkü anladığım kadarıyla @cevat hedef PIC'in içindeki programı kullanmaksızın bu işi yapmak istiyor. Yani hedef PIC'te kendisine dışarıdan gelen veriyi program hafızasına yazmak için bir yazılım olmayacak. Gerçi böyle bir uygulamaya neden ihtiyaç duyulduğunu anlayamadım bir türlü.
Gökçe Tağlıoğlu