Aktyw Forum

Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.

Sprawdź punkty Zarejestruj się

$PROG - jak obsłużyć programowo fusebity.

Awatar użytkownika
almatea
-
-
Posty:240
Rejestracja:12 gru 2003, o 17:02
Lokalizacja:Brzeszcze
Kontaktowanie:
$PROG - jak obsłużyć programowo fusebity.

Postautor: almatea » 30 kwie 2007, o 09:33

Hi,

czy ktoś wie może jak programowo obsłużyć fusebity?

Np. zablokować JTAG, ustawić kwarc zewnętrzny, zablokować przed odczytem flasha.

LB bity zabezpieczające – Lockbits,
FB Fusebit,
FBH Fusebit High,
FBX Extended Fusebit.

np:

$prog &HFF , &HEF , &HD9 , &HFD - jak interpretować poszczególne wartości?


Pozdrawiam

Awatar użytkownika
Press
-
-
Posty:389
Rejestracja:10 mar 2004, o 16:21
Lokalizacja:Wrocław
Kontaktowanie:

Postautor: Press » 30 kwie 2007, o 11:51

hmmm. no ekspertem w tej dziedzinei to ja nei jestem. Ale fusebitow nei da sie obsluzyc programowo z tego co mi wiadomo...

Awatar użytkownika
almatea
-
-
Posty:240
Rejestracja:12 gru 2003, o 17:02
Lokalizacja:Brzeszcze
Kontaktowanie:

Postautor: almatea » 30 kwie 2007, o 18:13

Przy autoprogramowaniu z wykorzystaniem programatora STK200/300 dyrektywa $PROG służy właśnie do ustawienia fusebitów.


Np. polecenie poniżej ustawia fusebity z sekcji Lockbit.

$PROG &H20 ,,,

Nie wiem jednak jak odnieść się do wartości - &H20

Pozdrawiam

kenaJ
-
-
Posty:29
Rejestracja:13 lis 2006, o 22:31
Lokalizacja:Kraków

Postautor: kenaJ » 12 cze 2007, o 23:26

Możesz zrobić to zarówno z programu BASCOM AVR bądź PonyProg 2000.
W BASCOMIE masz do wglądu możliwe ustawienia a w Pony bity te są pokazane pod swoimi nazwami.

Udanych testów! :-)

Awatar użytkownika
almatea
-
-
Posty:240
Rejestracja:12 gru 2003, o 17:02
Lokalizacja:Brzeszcze
Kontaktowanie:

Postautor: almatea » 16 cze 2007, o 15:55

To, że da się je obsłużyć z poziomu samego kompilatora, czy programów takich jak choćby Pony Prog, to chyba dla nikogo żadna nowość....

Moje pytanie dotyczyło dyrektywy programowej $PROG i jej parametryzacji.

Pozdrawiam.

szymel
-
-
Posty:212
Rejestracja:16 sty 2005, o 16:42
Lokalizacja:Włocławek

Postautor: szymel » 16 cze 2007, o 19:40

To, że da się je obsłużyć z poziomu samego kompilatora, czy programów takich jak choćby Pony Prog, to chyba dla nikogo żadna nowość....

Moje pytanie dotyczyło dyrektywy programowej $PROG i jej parametryzacji.

Pozdrawiam.
Fusebity i lockbity , pogrupowane są w bajty o nazwach LB,FB,FBH,FBX.Jednak nie wszystkie z nich , występują w każdym uC.W tych "mniejszych/prostszych" przeważnie LB i FB.
Teraz zaglądamy do dokumentacji np. ATMega8 i cóż widzimy :?:
Bajt FB ,składa się z 8 aktywnych bitów , o nazwach
FB.7- BODLEVEL
FB.6- BODEN
FB.5- SUT1
FB.4- SUT0
FB.3- CKSEL3
FB.2- CKSEL2
FB.1- CKSEL1
FB.0- CKSEL0
Zakładam , że chcemy zaprogramować(ustawić na zero) bity SUT0 i BODEN , a resztę pozostawic niezaprogramowane(ustawić na jeden) , to wpisujemy w dyrektywę $prog , odpowiednią do stanu poszczególnych bitów w bajcie wartość ...
$PROG ,&HAF,,
... i już ;)
Zdaję sobie sprawę(Pan Alberts także) ,że dla wielu - jeśli nie dla większości użytkowników Bascoma , to "czarna magia" , więc "łatwiejszy" sposób to:
1)Zostawiamy sobie(najwygodniej na początku kodu źródłowego) jedną pustą linię i ustawiamy w niej kursor.
2)Wybieramy "Manual program" , klikamy na zakładkę "Lock and Fuse Bits" i czekamy , aż zostaną wczytane z uC aktualne ustawienia LB,FB,FBH,FBX.
3)Zmieniamy ustawienie w/g potrzeb i wybieramy Write PRG , a wtedy w kodzie źródłowym w linii z kursorem , pojawi się $prog LB,FB,FBH,FBX z właściwymi wartościami.

To tyle :)

Piotrek

Wróć do „Projektowanie PCB, programy EDA, CAD, narzędziowe”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 70 gości