AVRdude i programator USB

Oct 15, 2006 4 Replies

Zrobi³em programator do AtmelAVR na USB (wg

formatting link
) Uk³ad dzia³a z AVRdude, ale s± dwa problemy:


  1. Zapis i odczyt przebiegaj± poprawnie, ale nie mo¿na zapisaæ ¿adnych FUSE. G³ównie zale¿y mi na LOCK BITS. Obojêtne czy u¿ywam GUI, czy wpisuje "z palca", efekt jest ten sam.


  1. Najnowszy firmware (
    formatting link
    ) pracuje tylko z AVRdude 5.2 Niestety ta wersja AVRdude jest dostêpna w formie nieskompilowanej. Ma kto¶ mo¿e dzia³aj±c± pod Win ?



Wersja firmware 2005-11-14 zawiera starszy AVRdude i dzia³a, gdyby nie te "FUSY".



Pozdrawiam Veego



Veego przemówił ludzkim głosem:

Podaj dokładnie wszystkie parametry z jakimi wywołujesz program. Prawdopodobnie zapomniałeś podać parametr odblokowujący zapis fusebitów (małe 'u').

U¿ytkownik "Zbych" snipped-for-privacy@onet.pl napisa³ w wiadomo¶ci news:egt8cc$mb7$ snipped-for-privacy@nemesis.news.tpi.pl...

U¿ywam nak³adkê graficzn± AVRdude-gui, która sama wpisuje liniê komend w zale¿no¶ci jakie "ptaszki" siê zaznaczy i co wpisze w pola parametrów. Wpisywana jest dok³adnie ¶cie¿ka -C oraz -U flash:w:

I tak przy zapisie: "D:\AVRdude\avrdude" -p m16 -c usbasp -C "D:\AVRdude\avrdude.conf" -P com3 -U flash:w:"D:\xxx\MOD2.BIN":r -F

przy weryfikacji: "D:\AVRdude\avrdude" -p m16 -c usbasp -C "D:\AVRdude\avrdude.conf" -P com3 -U flash:v:"D:\xxx\MOD2.BIN":r -F

przy odczycie: "D:\AVRdude\avrdude" -p m16 -c usbasp -C "D:\AVRdude\avrdude.conf" -P com3 -U flash:r:"D:\xxx\MOD2.BIN":r -F

Do tego momentu jest 100% OK.

zapis LOCK FUSE: "D:\AVRdude\avrdude" -p m16 -c usbasp -C "D:\AVRdude\avrdude.conf" -P com3 -U lock:w:0xfc -F

Wiem, wiem... -u jest z du¿ej litery, jednak wpisane ma³± "z palca" równie¿ nie dzia³a. W przypadku wpisania -U próbuje odczytaæ plik "0xfc" i krzyczy, ¿e nie ma takiego pliku lub katalogu. Natomiast przy -u nie widaæ ¿adnej akcji (puste komunikaty). Co gorsze, przeczytaæ LOCK BITów te¿ nie mo¿na. To samo dotyczy LOW FUSE, HIGH FUSE i pewnie innych te¿.

Wpisa³em 0xfc z dokumentacji. Zgaszenie dwóch m³odszych bitów daje ca³kowit± blokadê odczytu i zapisu. Zreszt± mo¿na tam wpisaæ cokolwiek a i tak nie dzia³a.

Veego

Veego przemówił ludzkim głosem:

Krzyczy, bo nie wie, że 0xfc to wartość, a nie nazwa pliku. Powinieneś wpisać -U lock:w:0xfc:m

Bo -u to tylko pozwolenie na zmianę, a nie wykonanie tej zmiany. Powinieneś wpisać:

D:\AVRdude\avrdude -p m16 -c usbasp -P com3 -u -U lock:w:0xfc:m

U¿ytkownik "Zbych" snipped-for-privacy@onet.pl napisa³ w wiadomo¶ci news:egto7m$jic$ snipped-for-privacy@atlantis.news.tpi.pl...

Jestem w szoku, poniewa¿ tyle siê naszuka³em a rozwi±zanie by³o takie proste. Dzia³a oczywi¶cie, za co bardzo dziêkujê. Wreszcie mam pe³nowarto¶ciowy i mobilny programator :)

Okazuje siê, ¿e wystarczy u¿ycie komendy: "D:\AVRdude\avrdude" -p m16 -c usbasp -C "D:\AVRdude\avrdude.conf" -P com3 -U lock:w:0xfc:m

Jeszcze raz dziêkujê i pozdrawiam.

Veego

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required