hurtowe programowanie AVR ?

Apr 18, 2016 35 Replies

Mam do zaprogramowania kilkadziesiąt atmeg. Za pomocą usbasp albo avr dragon.



I teraz - czy możecie coś polecić ( sofware ), żeby jednym kilknięciem zaprogramować fusy, załadować flash i eeprom, zweryfikować i zablokować lockbity ?



Pod windows albo osx może być.


Program do programowania; avrdude (pod linux i Win) jest konsolowy więc ubierz go w skrypt.

Pod OSX chyba też jest więc nie powinno być problemu.

jp

jp

Zapomniałem dopisać - żeby się obyło bez skryptów :) Bo zanim dojdę co i jak , to ruski miesiąc upłynie.

Coś okienkowego mi się marzy...

:-)

No nie wiem czy okienkowe rzeczy będą łatwiejsze do opanowania niż coś w rodzaju

dla programu:

sudo avrdude -c usbasp -p atmega128 -C ./avrdude.conf -U flash:w:main5.hex - F

i dla fusów:

sudo avrdude -c usbasp -p atmega128 -C ../avrdude.conf -U lfuse:w:0xff:m sleep 2 sudo avrdude -c usbasp -p atmega128 -C ../avrdude.conf -U hfuse:w:0xd1:m sleep 2 sudo avrdude -c usbasp -p atmega128 -C ../avrdude.conf -U efuse:w:0xfF:m

jp

W dniu 2016-04-18 o 16:57, sundayman pisze:

Jacek dobrze pisze. Przy okazji na linuchu możesz też puścić. Nie wyobrażam sobie środowiska do programowania produkcyjnego do AVR na AVR/Atmel Studio. Przy skrypcie masz dokładnie to, co trzeba, a nie że Ci się palec omsknie albo o czymś zapomnisz. A jak dobrze zakombinujesz, to chyba nawet możesz ze skryptu nadawać numery seryjne i inne takie...

Pozdrawiam

DD

No Jacek pisze dobrze, z pewnością :) Tylko, że mam strasznie jakiegoś lenia intelektualnego, i zanim się zorientuję jak mam tego avrdude ogarnąć, to mi się skończy czas przeznaczony na to zajęcie...

Linux mi na nic, bo nie używam niestetyż.

Hmmm, żeby był jakiś generator skryptów do tego avrkoleżki...

sundayman snipped-for-privacy@poczta.onet.pl> napisał(a):

Przecież skrypt to 10 minut. Napiszesz go szybciej sam niż ktokolwiek zdąży Ci na posta odpisać :) avrdude –c usbasp –p m32 –U flash:w:program.hex avrdude –c usbasp –p m32 –U hfuse:w:0xC9:m –U lfuse:w:0x9F:m avrdude –c usbasp –p m32 –U lock:w:0xC9:m

W dniu 18.04.2016 o 18:01, Grzegorz Niemirowski pisze:

dobra... no już. Próbuję zatem...

sundayman snipped-for-privacy@poczta.onet.pl> napisał(a):

W graficznym narzędziu możesz sobie wygodnie obliczyć fusebity i lockbity, te powyżej są oczywiście przykładowe. Za m32 podstawiasz symbol swojej ATmegi.

Ok, to potrzebuję kolejno wykonać :

avrdude -p atmega8 -c usbasp -P usb -u -U lfuse:w:0x3F:m -U hfuse:w:0xC8:m

avrdude -p atmega8 -c usbasp -P usb -U flash:w:"C:\Users\sundayman\Desktop\Ziff preprogram files\Firmware

851\M8\M8 hardware 4_38 bootloader 1 & firmware 17.hex":i -D -U eeprom:w:"C:\Users\sundayman\Desktop\Ziff preprogram files\Firmware 851\M8\M8 hardware 4_38 bootloader 1 & firmware 17 EEPROM.eep":i

avrdude -p atmega8 -c usbasp -P usb -U lock:w:0x14:m

jak to zrobić, żeby "za 1 zamachem" ?

sundayman snipped-for-privacy@poczta.onet.pl> napisał(a):

W jakim sensie? Jak to będziesz miał w skrypcie .cmd, to się przecież wykona po kolei za jednym kliknięciem. Chcesz mieć koniecznie jedną długaśną linijkę?

W dniu 2016-04-18 o 17:58, sundayman pisze:

No to lenia musisz mieć strasznego ;) (nie to, żebym nie rozumiał, sam tak czasem mam) Pierwszy link z google ;)

formatting link
Pozdrawiam

DD

W dniu 18.04.2016 o 18:13, Grzegorz Niemirowski pisze:

nie no, oczywiście nie jedną linijkę. Pytam właśnie jak to ma technicznie być zapisane, bo nie mam doświadczenia z tym avrdude - jak toto obsługuje skrypt.

Znaczy - zrobić plik .cmd ?

Jakieś powinny być "separatory" między poszczególnymi liniami ? Jak Jacek napisał "sleep2" ?

sundayman snipped-for-privacy@poczta.onet.pl> napisał(a):

A obsługuje? Mówimy o skrypcie powłoki cmd (win) lub bash (linux, osx).

Tak, normalny plik tekstowy, tylko rozszerzenie .cmd a nie .txt

Linia to linia, nie trzeba żadnego specjalnego separatora, Enter wystarczy.

On podawał przykład pod Linuksa, tam w systemie jest komenda sleep. Ale ona nie jest w tym skrypcie potrzebna.

W dniu 2016-04-18 o 16:57, sundayman pisze:

Jeśli koniecznie chcesz okienka, możesz użyć Atmel Studio i tam przygotować sobie .elf'a z zawartością całej pamięci razem z fuse bitami. Programujesz potem jednym kliknięciem. Poza wspomnianym avrdude masz jeszcze konsolowy atprogram Atmela.

W dniu 2016-04-18 o 16:11, sundayman pisze:

Wersja okienkowa:

formatting link
Wczytujesz raz, a potem podłączasz atmege, klikasz Write All, następną itd :)

Marcin

no to teraz, jak już opanowałem ten skrypt... :D

Ale ok, dzięki - przyda się.

Tylko jak to ściągnąć ? Domaga się podania linka do twarzoksiążki. No nie mam - i co ??

dobra, pobrałem jakoś. Wygląda jakby miało robić co trzeba, ale niestety podczas próby zapisu wywala jakiś błąd o USB.

Mimo, że rozpoznaje procesor poprawnie, kasuje też.

Skrypt avrdude działa niestety lepiej :)

Join the Discussion

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

Didn't find your answer?

Ask the community — no account required