18f serisi kod koruması nasıl yapılır komutla ?

Başlatan ibo1973, 19 Ağustos 2008, 19:00:17

ibo1973

@ DEVICE 16877 PROTECT_ON 16f877 lerde programın başına bunu ekleyip kod koruması oluyordu ama 18f2550 de bu olmuyor kullandığım program mprog bunun içinde var ancak her açtığımda kod korumasını yeniden açmam gerekiyor benim arzu ettiğim programın basına yazıcağım bir komutla kod korumasını açmak yardımcı olan arkadaşlara çok teşşekür ederim.

tyildizak

Proton help'inde şöyle bir örnek var:

@CONFIG_REQ
 @__CONFIG CONFIG1H, OSCS_OFF_1 & HS_OSC_1
 @__CONFIG CONFIG2L, BOR_ON_2 & BORV_20_2 & PWRT_ON_2
 @__CONFIG CONFIG2H, WDT_OFF_2 & WDTPS_128_2
 @__CONFIG CONFIG3H, CCP2MX_ON_3
 @__CONFIG CONFIG4L, STVR_ON_4 & LVP_OFF_4 & DEBUG_OFF_4


Sigortaların bulunduğu yazmaçlar ve adları INC dosyasında .LPB uzantılı dosyalarda var.Oradan bakıp gerekenleri yazmak gerkiyor.(programlayıcıdan ayarlamak daha kolay galiba :D )

ibo1973

Alıntı yapılan: "tyildizak"Proton help'inde şöyle bir örnek var:

@CONFIG_REQ
 @__CONFIG CONFIG1H, OSCS_OFF_1 & HS_OSC_1
 @__CONFIG CONFIG2L, BOR_ON_2 & BORV_20_2 & PWRT_ON_2
 @__CONFIG CONFIG2H, WDT_OFF_2 & WDTPS_128_2
 @__CONFIG CONFIG3H, CCP2MX_ON_3
 @__CONFIG CONFIG4L, STVR_ON_4 & LVP_OFF_4 & DEBUG_OFF_4


Sigortaların bulunduğu yazmaçlar ve adları INC dosyasında .LPB uzantılı dosyalarda var.Oradan bakıp gerekenleri yazmak gerkiyor.(programlayıcıdan ayarlamak daha kolay galiba :D )

teşekür ederim

bende proton yok zaten data 18f2550 datasheed inden de baktım ama bişey anlamadım :D yani burda yazdığındanda bi şey anlamadım açıkcası ama cevabın için teşekkür ederim

Tagli

Emin değilim ama kod korumasını kodun içinde de etkinleştirebilirsin sanırım. 18F serisinde PIC kendi program hafızasını değiştirebiliyor yani kodunun içinde config word ile oynayabilirsin. (Kendi kendini programlama 16F'lerde de var ama sanırım onlar config word'e ulaşamıyor). Sorduğun şeyle tam olarak ilgili olmasa da ilginç bir kullanım olabilir. Mesela belli bir şart sağlandığında PIC kendi kendine koruma koyar, veya mesela seri porttan özel bir veri geldiği zaman korumasını kaldırır falan...
Gökçe Tağlıoğlu

ibo1973

Alıntı yapılan: "Tagli"Emin değilim ama kod korumasını kodun içinde de etkinleştirebilirsin sanırım. 18F serisinde PIC kendi program hafızasını değiştirebiliyor yani kodunun içinde config word ile oynayabilirsin. (Kendi kendini programlama 16F'lerde de var ama sanırım onlar config word'e ulaşamıyor). Sorduğun şeyle tam olarak ilgili olmasa da ilginç bir kullanım olabilir. Mesela belli bir şart sağlandığında PIC kendi kendine koruma koyar, veya mesela seri porttan özel bir veri geldiği zaman korumasını kaldırır falan...

bu anlattıkların tabi süper olur ama bana sadece programın başında etkinleştireciliceğim bi komut kod lazım keza %99 biten projemin son rutuşlerini yapıp satmaya başlıyıcam ama öyle çok hızlı gidicek bi proje değil zaman içinde kod koruması koymayı unutabilirim ama programın içine koyarsam unutmamayı garantiye almış olurum diye düşünüyorum neyse cevabın için teşşekür ederim :D

yas

Alıntı Yapzaman içinde kod koruması koymayı unutabilirim ama programın içine koyarsam unutmamayı garantiye almış olurum diye düşünüyorum

Olmazsa oluşturduğun hex dosyayı programlayıcının programında aç ve sonra sigortalardaki değişiklileri yaptıktan sonra dosyayı kaydet sonrada yükleme için bu dosyayı kullan.
Kolay gelsin.

ywzslm

tam olarak bir bilgim yok fakat kullanılan bazı prograamlamlarda fuse adında bi girdi var acaba buradan olabilirmi?
olgulardaki olgunluk biziz

zakbay

CONFIG CP0 = ON ; Code Protection Block 0 ENABLE
CONFIG CP1 = ON ; Code Protection Block 1 ENABLE
CONFIG CP2 = ON ; Code Protection Block 2 ENABLE
CONFIG CP3 = ON ; Code Protection Block 3 ENABLE
CONFIG CPB = ON ; Boot Block Code Protection ENABLE umarım işinizi görür
Tek dostum çalışmak...

90alper90

Alıntı Yap18F serisinde PIC kendi program hafızasını değiştirebiliyor yani kodunun içinde config word ile oynayabilirsin. (Kendi kendini programlama 16F'lerde de var ama sanırım onlar config word'e ulaşamıyor).

Bunu bilmiyordum.16F serisinde de PIC çalışırken kendi programını değiştirebilir mi ?

tyildizak

pic basic'te WRITECODE komutu ile kendi program hafızasına yazabilen piclerde kullanabilirsiniz(16f876 gibi) .  İşlemekte olan kodun bulunduğu adrese yazmamaya dikkat etmek gerekiyor.

Kendi program hafızasına yazmak mümkün olmasaydı bootloader kullanılamazdı.