<< Előző oldal Vissza a tartalomjegyzékhez Következő oldal >>
10.1.4. Kódvédelem
A közepes teljesítményű PIC mikrovezérlők minden esetben el vannak látva programkód védelmi lehetőséggel, hogy a tetemes munkával fejlesztett programot illetéktelenek ne tudják felhasználni. Az EEPROM adatmemóriát is tartalmazó mikrovezérlők esetében ez a terület is ellátható kódvédelemmel. Természetesen az EEPROM adatmemória-terület a felhasználói programból aktív kódvédelem esetén is elérhető.
Aktív kódvédelem esetén a védett terület kiolvasása és írása tiltott.
A kódvédelmet vezérlő bitek a konfigurációs szóban vannak elhelyezve, amely csak programozási üzemmódban érhető el. Így a kódvédelem csak programozó készülék segítségével kapcsolható be.
A kódvédelem kikapcsolása minden esetben együtt jár a védett memóriaterület törlésével. A FLASH mikrovezérlők kódvédelemének megszűntetési lehetőségei egy későbbi fejezet témája.
Típustól függően a kódvédelmet a CP, CP0, CP1, CPD, CPC vagy DP vezérlő bitek "0"-ra állítása aktivizálja. (Ugyanis a konfigurációs szó minden egyes vezérlőbitje alaphelyzetben "1" értékű.)
A CP0 és CP1 bitekkel ellátott mikrovezérlőknél a programmemória részleges kódvédelme is beállítható.
A CPD vagy DP bit az EEPROM adatmemória kódvédelmét vezérli.
Az újabb mikrovezérlő típusoknál a kódvédelem bitek többszörözve szerepelnek, és a kódvédelem csak az összes vezérlőbit beállításával aktivizálható.
Aktív kódvédelem esetén olvasva:
ˇ
a programmemóriát, az "0" értékeket, vagyis NOP utasításokat ad vissza;
ˇ
az azonosító mezőt, az helyes értéket ad vissza;
ˇ
a típusazonosítót, az helyes értéket ad vissza;
ˇ
a konfigurációs szót, az helyes értéket ad vissza;
ˇ
a kalibrációs területet, az helyes értéket ad vissza;
ˇ
az EEPROM adatmemóriát, az "0" értékeket ad vissza.
ROM programmemóriájú mikrovezérlők esetében a programmemória kódvédelmét a programbeégetés során a gyártó a kívánt állapotba hozza. Ez később már nem változtatható meg, mivel a kódvédelmet vezérlő konfigurációs bitek is ROM területen találhatók.
Egyes ROM alapú mikrovezérlők adat EEPROM területet is tartalmaznak. Ez az EEPROM adatmemória is ellátható kódvédelemmel, de ennek a konfigurációs bitje már írható és olvasható EEPROM területen van elhelyezve.
Az EEPROM kódvédelem gyárilag a ROM programmemória kódvédelem bittel megegyező beállítást kap, illetve:
ˇ
a ROM kódvédelem kikapcsolt állapotában az EEPROM kódvédelem is kikapcsolt állapotú;
ˇ
a ROM kódvédelem akár csak részlegesen is aktivált állapotában az EEPROM kódvédelem is aktív lesz.
Előfordulhat olyan eset, amikor a ROM alapú mikrovezérlő kódvédelemmel van ellátva, de az EEPROM memóriát szükséges bizonyos kezdőértékkel feltölteni. Ez a feladat a programozó készülékekkel megoldható. Egy EEPROM törlési ciklussal az EEPROM kódvédelem bit kikapcsolt állapotba hozható, természetesen a teljes EEPROM terület törlésével együtt. (Az illetéktelen adathozzáférések megakadályozására.) Az EEPROM újraprogramozása után a kódvédelem újra aktiválható.
Tudomány és Technika (test@t-es-t.hu)
<< Előző oldal Vissza a tartalomjegyzékhez Vissza a lap tetejére Következő oldal >>