STM8 kod koruması hakkında bir soru

Başlatan Mnemonic, 01 Şubat 2018, 11:07:03

Mnemonic

Merhaba arkadaşlar;
Uygun yer bulamadığım için buraya yazıyorum yardımcı olursanız sevinirim.
STM8 ile yapmış olduğumuz bir projede kod koruması aktif edildiğinde program memory ve option byte üzerinde kod koruması olmasını
Ancak data eeprom üzerinde kod koruması olmamasını ve dışarıdan okunup yazılabilinmesini istiyorum. bunun bir yolu varmıdır ?


JKramer

Dışarıdan okunup yazılması derken STVP ile yapılmasını kastediyorsunuz sanırım:

Alıntı YapReadout protection
Readout protection is selected by programming the ROP option byte to 0xAA. When readout
protection is enabled, reading or modifying the Flash program memory and DATA area in
ICP mode (using the SWIM interface) is forbidden, whatever the write protection settings.
Furthermore, on medium and high density STM8S and STM8AF, the debug module (DM)
cannot start code execution by the CPU when the readout protection is active, and the CPU
is stalled.
Even if no protection can be considered as totally unbreakable, the readout feature provides
a very high level of protection for a general purpose microcontroller.
Removing the readout protection
The readout protection can be disabled on the program memory, UBC and DATA areas, by
reprogramming the ROP option byte in ICP mode. In this case, the Flash program memory,
the DATA area and the option bytes are automatically erased and the device can be
reprogrammed.
(Ref. manual-rev9, sf.44)


Yani korumayı kaldırdığınızda her şey siliniyor.

Mnemonic

Bunu zaten biliyorum
benim demek istediğim rop aktif edilirken sadece program memory ve option byte üzerine aktif etmek ama daha memory üzerinde aktif etmemek mümkün mü ?


JKramer

Değil; yukarıdaki alıntıda yazdığı gibi, ROP'u aktive ettiğinizde hepsi için aktif oluyor.

farukozer23

Bir soru da ben sorayım.

ROP'u aktif ettiğimizde başka birisi işlemcinin üzerinden parça numarasına bakıp boş birproje klasörü oluşturup içindeki kodu okuyabilir mi?

ROP'u aktif edince tamamen kod korunmuş oluyor mu?

MrDarK

ROP aktif edildikten sonra programlama pini swim hattı üzerinden sadece rop kaldırma yapılabilir, rop kaldırılmadan yazma ve silme yapılamaz.

Rop kaldırıldığında chip otomatik olarak erase olacaktır.
Picproje Eğitim Gönüllüleri ~ MrDarK