PIC den yazılım silmek

Başlatan baran123, 20 Eylül 2014, 18:24:48

baran123

Bir buton ile pic in içindeki yazılımı silebilir miyiz ? Örneğin bir led devresi çalışıyor karaşimşek gibi bir buton ile ona göre bir kod ile bastıgımız anda pic in içindeki yazılımı tamamiyle silebilirmiyiz ?

Gökhan BEKEN

Did you mean: "pic'e öyle bir kod vereyim ki kendi içindeki kodu silsin."
Özel mesaj okumuyorum, lütfen göndermeyin.

Karamel

I guess, He is meaning that, some code, which is running in microcontroller rom, is working. Another code, which is loaded last code before, is running different address on mcu's rom so, he want to kill last code with main code. We can say that, main code is killer code. when he want to erase last loaded code, he should run the main killer code and erase just the last code. it is like bootloader. right?

94onur94

eepromun ilk adresine 1 yaz programın döngüsü eğer eepromun ilk adresindeki veri 1 ise döngü çalışşın değilse döngüye girmesin butona basılınca eeproma 0 yaz böylece bir daha döngüye giremez program çalışmaz

serdararikan

bootloader programı ile programın start adresini silersen veya başlangıç adresinde sonsuz döngüye sokarsan programı silmiş olursun

Mucit23

İşlemcide Boatloader tarzı bir program olursa eğer bu boatloader ile ana program silinebilir. Olmaz diye birşey yok. Fakat her halükarda boatloader programı sabit kalmak zorunda.

STM32 lerde RTC ile birlikte bu iş için TAMPER pini mevcut. Herhangi bir dış etki ile bu pine tetik sinyali göndererek Backup RAM alanı yani statik ram silinebiliyor.

Örneğin bir cihaz yaptınız cihazın kutusunun açılmasını istemiyorsunuz. Tamper pinine bir switch bağlayıp kapak açıldığında bu swtich üzerinden tamper pinine tetikleme sinyali göndererek Statik Ram'in silinmesini sağlayabilirsiniz. Bu şekilde cihaz çalıştığında kapağının çalıştığı anlaşılabilir.

Tamper pini bu tür şeyler için düşünülmüş birşey.

baran123

Alıntı yapılan: meftun - 20 Eylül 2014, 18:35:59
Did you mean: "pic'e öyle bir kod vereyim ki kendi içindeki kodu silsin."
Yes :D
Alıntı yapılan: Karamel - 20 Eylül 2014, 18:48:27
I guess, He is meaning that, some code, which is running in microcontroller rom, is working. Another code, which is loaded last code before, is running different address on mcu's rom so, he want to kill last code with main code. We can say that, main code is killer code. when he want to erase last loaded code, he should run the main killer code and erase just the last code. it is like bootloader. right?

Türkçe yazsaydınız keşke :D
Alıntı yapılan: 94onur94 - 20 Eylül 2014, 18:55:55
eepromun ilk adresine 1 yaz programın döngüsü eğer eepromun ilk adresindeki veri 1 ise döngü çalışşın değilse döngüye girmesin butona basılınca eeproma 0 yaz böylece bir daha döngüye giremez program çalışmaz
Hmm bir deneyeyim :)

Karamel

hocam meftun hocam ingilizce yazinca bende ingilizce devam ediyoruz sandim ::) hocam nette arama yapinca soyle birsey buldum. umarim isiniza yarar...... http://www.barissamanci.net/Makale/22/pic-flash-program-hafizasina-yazma-silme-okuma-islemleri/

ayhani

Alıntı yapılan: 94onur94 - 20 Eylül 2014, 18:55:55
eepromun ilk adresine 1 yaz programın döngüsü eğer eepromun ilk adresindeki veri 1 ise döngü çalışşın değilse döngüye girmesin butona basılınca eeproma 0 yaz böylece bir daha döngüye giremez program çalışmaz

En basit en mantıklı çözüm bu. Ben şifreli kilit uygulamasında benzer bir uygulama yaptım.
En iyi bildiğim şey hiçbir şey bilmediğimdir.

aliveli

yazılım silinmiş olmadı ama

Mucit23

Alıntı yapılan: aliveli - 21 Eylül 2014, 16:40:39
yazılım silinmiş olmadı ama

İstenen nedir? Yazılımı bloke etmekmi? Cevabın evet ise en basit çözüm eeprom kullanmaktır.

Şayet Ana programı MCU içerisinden sileyim dersen ekstra bir boatloader(yani bu işi yapacak) programa ihtiyaç vardır.

Mikroişlemci tümüyle kendi programını silemez.

baran123

Amaç bloke etmek, eeprom yöntemi işimi görür.