jaromir
Guest
Tue Nov 02, 2004 8:54 am
Witam
1.Mam taki problem - procek ( Mega8 ) po zaprogramowaniu bootlock bitów
przestaje poprawnie pracowac ( podlaczony wyswietlacz LED zaczyna glupiec).
2.Jezeli nie uzywam bootloadera, to ktore lockbity musze zaprogramowac w
mega8 aby zabezpieczyc program przed zczytaniem. Program uzywa flasha do
przechowywania stałych tablic danych.
pozdr.
jfk
Adam Dybkowski
Guest
Tue Nov 02, 2004 9:07 am
jaromir wrote:
Quote:
1.Mam taki problem - procek ( Mega8 ) po zaprogramowaniu bootlock bitów
przestaje poprawnie pracowac ( podlaczony wyswietlacz LED zaczyna glupiec).
Jakich? Wszystkich 6?
Quote:
2.Jezeli nie uzywam bootloadera, to ktore lockbity musze zaprogramowac w
mega8 aby zabezpieczyc program przed zczytaniem. Program uzywa flasha do
przechowywania stałych tablic danych.
Wystarczy LB1 i LB2. [Nie]używanie bootloadera nic tu nie zmienia - przy
takich lockbitach procka nie będzie można ani programować, ani
odczytywać, do czasu kompletnego skasowania oczywiście.
--
Adam Dybkowski
adybkows@amwaw.edu.pl
http://www.amwaw.edu.pl/~adybkows/
jfk
Guest
Tue Nov 02, 2004 9:28 am
Użytkownik "Adam Dybkowski" <adybkows@amwaw.edu.pl> napisał w wiadomości
news:cm7ind$gbm$1@atlantis.news.tpi.pl...
Quote:
jaromir wrote:
1.Mam taki problem - procek ( Mega8 ) po zaprogramowaniu bootlock bitów
przestaje poprawnie pracowac ( podlaczony wyswietlacz LED zaczyna
glupiec).
Jakich? Wszystkich 6?
Tak
Quote:
2.Jezeli nie uzywam bootloadera, to ktore lockbity musze zaprogramowac w
mega8 aby zabezpieczyc program przed zczytaniem. Program uzywa flasha do
przechowywania stałych tablic danych.
Wystarczy LB1 i LB2. [Nie]używanie bootloadera nic tu nie zmienia - przy
takich lockbitach procka nie będzie można ani programować, ani odczytywać,
do czasu kompletnego skasowania oczywiście.
--
Adam Dybkowski
adybkows@amwaw.edu.pl
http://www.amwaw.edu.pl/~adybkows/
Tak tez teraz robie, ale zastanawia mnie dlaczego jak zaporgramuje wszystkie
6 to nie działa dobrze
( dzieje sie to dopiero od niedawna - moze to miec zwiazek z rozmiarem kodu
? ) ???
jfk
Adam Dybkowski
Guest
Tue Nov 02, 2004 8:29 pm
jfk wrote:
Quote:
1.Mam taki problem - procek ( Mega8 ) po zaprogramowaniu bootlock bitów
przestaje poprawnie pracowac ( podlaczony wyswietlacz LED zaczyna
glupiec).
Jakich? Wszystkich 6?
Tak
No to wszystko jasne. Co by tu dużo tłumaczyć - po prostu RTFM.
Zablokowałeś sobie m.in. możliwość czytania pamięci programu instrukcją
LPM - bez tego nie zadziała poprawnie kod startowy C, przepisujący
zmienne inicjowane z pamięci Flash do RAMu. A potem wszystkie funkcje
korzystające ze stałych w pamięci programu (np. printf_P) też nie będą
działać jak trzeba.
--
Adam Dybkowski
adybkows@amwaw.edu.pl
http://www.amwaw.edu.pl/~adybkows/
jfk
Guest
Wed Nov 03, 2004 2:39 pm
Quote:
1.Mam taki problem - procek ( Mega8 ) po zaprogramowaniu bootlock bitów
przestaje poprawnie pracowac ( podlaczony wyswietlacz LED zaczyna
glupiec).
Jakich? Wszystkich 6?
Tak
No to wszystko jasne. Co by tu dużo tłumaczyć - po prostu RTFM.
Zablokowałeś sobie m.in. możliwość czytania pamięci programu instrukcją
LPM - bez tego nie zadziała poprawnie kod startowy C, przepisujący zmienne
inicjowane z pamięci Flash do RAMu. A potem wszystkie funkcje korzystające
ze stałych w pamięci programu (np. printf_P) też nie będą działać jak
trzeba.
Tylko że długo działał ( a przynajmniej nie zauważyłem błednego działania) -
wiec w ogole mnie to nie interesowało co i jak. Czy kompilator C (winavr)
musi uzywac LPM ?
W kazdym razie - dzieki za odpowiedzi.
jfk
Rafał Szulc
Guest
Sat Nov 13, 2004 3:47 pm
Quote:
No to wszystko jasne. Co by tu dużo tłumaczyć - po prostu RTFM.
Zablokowałeś sobie m.in. możliwość czytania pamięci programu instrukcją
LPM - bez tego nie zadziała poprawnie kod startowy C, przepisujący
zmienne inicjowane z pamięci Flash do RAMu. A potem wszystkie funkcje
korzystające ze stałych w pamięci programu (np. printf_P) też nie będą
działać jak trzeba.
Popraw mnie, jeżeli się mylę, ale z tego co czytałem bity blokujące
instrukcje LPM i SPM nie blokują ich pracy w obrębie pamięci danych. Blokują
korzystanie z tych instrukcji przez bootloader w celu odczytania bądź
modyfikacji pamięci w sekcji programu oraz blokują korzystanie z tych
instrukcji przez obszar pamięci programu w celu odczytania bądź modyfikacji
pamięci sekcji bootloadera.
Pozdrawiam
Rafał Szulc