| Author |
Message
|
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#1
14 Mar 2010 18:13 ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
przeczytałem kilka postów, ściągnąłem fajnego pdf'a o zabezpieczaniu i już wiem, że żeby zabezpieczyć mój program przed odczytaniem musze ustawić bity LB1 i LB2 na logiczne 0.
1. co to znaczy ustawić bity? jak to zrobić? gdzie to zrobić? (pisze w C)
2. w datasheet'cie od atmegi jest napisane, że blokuje się odczyt i zapis do flash i eeprom. Ja w moim programie, w trakcie działania urządzenia zapisuje kilka wartości na eeprom, czy będzie to nadal możliwe?
|
|
| Back to top |
|
 |
tadzik85 Poziom 22

Joined: 28 Feb 2007 Posts: 1571 Location: Bydgoszcz
|
#2
14 Mar 2010 18:18 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
Poczytaj i fusebitach. Ustawia się je na etapie programowania.
|
|
| Back to top |
|
 |
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#3
14 Mar 2010 20:32 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
w moim pdf'ie jest opis 12 fusów, ale nic tam nie ma o zabezpieczeniu pamięci przed odczytaniem. Natomiast jest napisane o "lock bitach", że to nimi blokuje się dostęp. Co mają do tego fuse bity?
|
|
| Back to top |
|
 |
Google

|
#
14 Mar 2010 20:32 |
|
|
|
|
|
| Back to top |
|
 |
Kabuto15 Poziom 16

Joined: 30 Jun 2007 Posts: 339 Location: Rzeszów
|
#4
14 Mar 2010 21:08 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
Chodzi oczywiście o lock bity (lock - blokada). Swoją drogą skoro programujesz swoje avrki to jak możesz nie wiedzieć jeszcze nic o tych bitach ? Jak programujesz swoje AVRy ?
Po pierwsze to nie są bity ustawiane z poziomu programu. PonyProg, AvrDude, AvrStudio, Bascom wszystkie pozwalają na ustawienie lock bitów.
A blokując Flash lub EEPROM blokujesz je jedynie przed zapisem i odczytem z zewnątrz.
|
|
| Back to top |
|
 |
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#5
14 Mar 2010 21:18 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
Lock Bity programuje się w trakcie zapisu? Ja właśnie robie zapis programem avrdude-gui ale nigdy jeszcze nie zaznaczałem tych "czek boksów" bo nie było mi to jeszcze nigdy potrzebne. Czy w tym programie tez można to zrobić? Jeśli tak to jak?
|
|
| Back to top |
|
 |
Kabuto15 Poziom 16

Joined: 30 Jun 2007 Posts: 339 Location: Rzeszów
|
#6
14 Mar 2010 21:24 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
Programowo (z poziomu języka C) tego nie możesz zrobić. Robisz to z poziomu programowania kontrolera (np. Avrdude). I pamiętaj że jak je ustawisz (np. blokując Flash i EEPROM) to już nigdy nie będziesz mógł zaprogramować AVRa (!). Więc ostrożnie z tym.
Avrdude-gui masz Lock Fuse (albo coś w tym rodzaju w zależności od wersji) - ustawiając je na 1 (checkbox zaznaczony) możesz zablokować AVRa przed odczytem lub zapisem.
|
|
| Back to top |
|
 |
tmf Poziom 24

Joined: 12 Aug 2009 Posts: 4309 Location: Katowice
|
#7
14 Mar 2010 21:55 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
Kabuto, oczywiscie to co piszesz nie jest prawda. Chip erase kasuje takze Lock Bity. Takze ponowny zapis ukladu bedzie mozliwy, tylko, ze wczesniej musimy go skasowac.
|
|
| Back to top |
|
 |
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#8
14 Mar 2010 22:01 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
tmf - właśnie czytałem że to nie jest "na stałe". Procka można odzyskać, ale danych nie.
No mam rzeczywiście coś takiego jak Lock Fuse i dwa "czekboksy".
Czy dobrze rozumiem, że jak zaznaczę read to zablokuje przed odczytem a jak write to przez zapisem?
Ale podświetlają mi się, uaktywniają pola do wpisania wartości hex, czy to konieczne czy zostawić zera tak jak avrdude-gui proponuje?
|
|
| Back to top |
|
 |
tmf Poziom 24

Joined: 12 Aug 2009 Posts: 4309 Location: Katowice
|
#9
14 Mar 2010 23:19 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
Przeczytaj uwaznie z noty sekcje Memory programming - Program and data memory lock bits.
|
|
| Back to top |
|
 |
Kabuto15 Poziom 16

Joined: 30 Jun 2007 Posts: 339 Location: Rzeszów
|
#10
15 Mar 2010 00:30 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
| tmf wrote: |
| Kabuto, oczywiscie to co piszesz nie jest prawda. Chip erase kasuje takze Lock Bity. |
Tak, przepraszam że wprowadziłem w błąd, nie miałem racji.
|
|
| Back to top |
|
 |
mirekk36 Poziom 25

Joined: 17 Jun 2006 Posts: 8154 Location: Szczecin
|
#11
15 Mar 2010 00:55 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
bestmlody --> nie wiem jaki masz procek dokładnie ale jeśli ATmega8 lub ATmega162 lub ATmega128, to zobacz jak wygodnie ustawia się wszystkie możliwe opcji zarówno LockBitów jak i FuseBitów, wraz z opisami tych opcji z programu mkAvrCalculator. Masz w nim m.in. zakładkę LockBity - tam wszystko zobaczysz co ciebie interesuje oraz coważne podejrzysz także wartości HEX LockBajtu oraz Bajtów zawierających FuseBity.
|
|
| Back to top |
|
 |
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#12
16 Mar 2010 16:58 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
a czy ktoś mógłby mi wysłać mkAvrCalculator na maila? nie mogę znaleźć...
bestmlody(malpa)o2.pl
Z góry dzięki.
|
|
| Back to top |
|
 |
mirekk36 Poziom 25

Joined: 17 Jun 2006 Posts: 8154 Location: Szczecin
|
#13
16 Mar 2010 17:09 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
bestmlody --> łooo matko, a nie widzisz w podpisie moich postów białego prostąkątnego obrazka z napisem mkAvrCalculator ????? toż wystarczy w niego kliknąć ;) hyhyhy nawet szukać nie trzeba
|
|
| Back to top |
|
 |
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#14
18 Mar 2010 17:20 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
no dobra, ściągnęłem wersje demo i w zakładce "Lock bity" zaznaczam w pierwszym pasku opcje 3, czyli "Mode 3: Further programming and verification disabled". Programuje moją ATmege8 i .... nic. Mogę nadal odczytać ją i zapisać flash do pliku. Co robię nie tak?
|
|
| Back to top |
|
 |
Google

|
#
18 Mar 2010 17:20 |
|
|
|
|
|
| Back to top |
|
 |
_Robak_ Poziom 22

Joined: 16 Apr 2006 Posts: 2185 Location: Bytom
|
#15
18 Mar 2010 17:25 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
To teraz zobacz jaki plik zgrałeś z ATmegi;) Wygląda dość dziwnie prawda?;)
|
|
| Back to top |
|
 |
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#16
18 Mar 2010 17:38 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
no nie wiem... nie znam się. To jakiś hex po prostu. Ale czy jest on dziwny? Jak się tego dowiedzieć, jak to sprawdzić?
Dodano po 6 [minuty]:
zapisałem go do pliku, później znów ten plik wgrałem do ATmegi i wszystko chodzi...
|
|
| Back to top |
|
 |
mirekk36 Poziom 25

Joined: 17 Jun 2006 Posts: 8154 Location: Szczecin
|
#17
18 Mar 2010 19:42 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
bestmlody --> ta dziwność polega na tym, że po zabezpieczeniu procka lock bitami , procek sprytnie wysyła same bzdury i śmieci zamiast prawdziwego wsadu gdy go odczytujesz ;)
tak to działa
|
|
| Back to top |
|
 |
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#18
18 Mar 2010 19:50 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
no to nie sa bzdury, bo po wpisaniu tego pliku z powrotem do uC urządzenie działa jak na oryginalnym wsadzie. Coś jest nie tak?
Czy wystarczy tylko zaznaczyć Mode 3 ?
|
|
| Back to top |
|
 |
mirekk36 Poziom 25

Joined: 17 Jun 2006 Posts: 8154 Location: Szczecin
|
#19
18 Mar 2010 19:59 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
| bestmlody wrote: |
no to nie sa bzdury, bo po wpisaniu tego pliku z powrotem do uC urządzenie działa jak na oryginalnym wsadzie. Coś jest nie tak?
Czy wystarczy tylko zaznaczyć Mode 3 ? |
No i co zaznaczasz Mode3 a potem programujesz procka tym Lock Bitem?????
Podejrzewam, że nie.
Wejdź sobie na zakładkę programator, kliknij ptaszka przy operacji zapis ale też kliknij ptaszka przy LOCKBIT a wtedy klawisz wykonaj aby zaprogramować ten ustawiony LockBit do procesora.
|
|
| Back to top |
|
 |
bestmlody Poziom 13

Joined: 12 Feb 2006 Posts: 136 Location: Kalisz
|
#20
18 Mar 2010 20:31 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
chyba działa :) bo teraz plik sczytany ma 20kB a oryginał ma 8kB. Po wgraniu tego 20kB są jakieś bzdury na diodach :)
|
|
| Back to top |
|
 |
Google

|
#
18 Mar 2010 20:31 |
|
|
|
|
|
| Back to top |
|
 |
mgiro Poziom 17

Joined: 14 Dec 2006 Posts: 380 Location: waskie
|
#21
16 Dec 2010 14:53 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
To jak zabezpieczę program przed skopiowaniem, to później żeby wgrać nowy program, to co muszę zrobić??
Mogę sobie po prostu wgrać nowy program, czy trzeba na początku zdjąć zabezpieczenie, a później zaprogramować???
|
|
| Back to top |
|
 |
mirekk36 Poziom 25

Joined: 17 Jun 2006 Posts: 8154 Location: Szczecin
|
#22
16 Dec 2010 15:16 Re: ATmega + zabezpieczenie programu przed skopiowaniem |
|
|
|
| mgiro wrote: |
czy trzeba na początku zdjąć zabezpieczenie, a później zaprogramować??? |
Wgranie nowego programu automatycznie usuwa zabezpieczenia i zeruje Lockbity.
|
|
| Back to top |
|
 |