Mikrokopter soft z atmegi644

FC opracowane przez Mikrokopter'a

Moderatorzy: moderatorzy2014, moderatorzy

mader
Posty: 212
Rejestracja: wtorek 07 sie 2012, 18:57
Lokalizacja: Częstochowa

Mikrokopter soft z atmegi644

Post autor: mader »

Witam wszystkich.

Ostatnio z niewyjaśnionych powodów w atmedze644 na MK zrobił się krater.
W związku z czym byłem zmuszony do wymiany mikrokontrolera na atmegę644p.

Po długich próbach wgrania softu przez port szeregowy, nadal wywala mi błąd.
Najdalej doszło do 44%.

Obrazek

W związku z tym mam pytanie: Czy ktoś mógłby mi zgrać zawartość atmegi i ew eepromu do plików i przysłać?
Mam wrażenie że wgranie całego flasha pomoże mi z tym problemem.

Pozdrawiam Mader
Zanim zadasz pytanie: http://rtfm.killfile.pl/
Awatar użytkownika
miś
Posty: 9242
Rejestracja: niedziela 07 lut 2010, 15:24
Lokalizacja: Bytom

Post autor: miś »

Nooo, jakbyś wgrał do tego procka bootloader z FlightControlera a nie z regli MKBL to pewnie by wszystko zadziałało.
Pzdr. -----MIŚ-----
mader
Posty: 212
Rejestracja: wtorek 07 sie 2012, 18:57
Lokalizacja: Częstochowa

Post autor: mader »

miś, bootloader jest wzięty stąd: http://svn.mikrokopter.de/listing.php?r ... cdacd4ecb6

Nie znam zbyt dobrze niemieckiego, niemniej wydaje mi się, że to jest bootloader do MK opartego na atmega644/644p...
Zanim zadasz pytanie: http://rtfm.killfile.pl/
Awatar użytkownika
miś
Posty: 9242
Rejestracja: niedziela 07 lut 2010, 15:24
Lokalizacja: Bytom

Post autor: miś »

No to przepraszam, ale masz dobrze. Coś mi się na oczy rzuciło wcześniej :oops:
A fuse bity dobrze ustawiłeś ?
Lfuse 0xFF
Hfuse 0xDC
Efuse 0xFD
Bootloader do megi 644p musi się nazywać "BootLoader_MEGA644P_20MHZ_V0_1.hex"
Pzdr. -----MIŚ-----
mader
Posty: 212
Rejestracja: wtorek 07 sie 2012, 18:57
Lokalizacja: Częstochowa

Post autor: mader »

Obrazek

Fusebity odczytane z procka.

Muszę sprawdzić jeszcze z innym uartem, bo mam uart na mcp2200. Być może ma za mały cache i po prostu się losowo zapycha.

Odnośnie bootloadera, to sprawdzałem i do 644 i 644p są identyczne. Ale i tak wgrywałem ten do 644p

Pozdrawiam
Zanim zadasz pytanie: http://rtfm.killfile.pl/
mader
Posty: 212
Rejestracja: wtorek 07 sie 2012, 18:57
Lokalizacja: Częstochowa

Post autor: mader »

Mały update i podsumowanie moich doświadczeń z MK:

1. UART koniecznie na układzie FT232 lub Scilabs. MCP2200 ma zbyt mały bufor i "zapycha" się w losowym momencie. W procesie aktualizacji na MCP2200 udało się zaprogramować procek do końca, niemniej nie udało się zweryfikować, czy wszystko jest ok...

2. Bootloader do procków ATmega644 i ATmega644p są identyczne, i można je stosować zamiennie.


Po wymianie atmegi644, ściągamy bootloader ze strony:
http://svn.mikrokopter.de/listing.php?r ... cdacd4ecb6

Niestety wymiana atmegi1284 będzie wiązać się z koniecznością zakupu tej ze sklepu mikrokoptera.

do wgrania bootloadera możemy użyć albo avrdude, albo mktoola.

AVRDude-gui
ustawiamy następujące fusebity:
Hfuse 0xDC
Lfuse 0xFF
Efuse 0xFD
Klikamy przycisk write obok fusebitów

Następnie wybieramy plik hex z pobranym bootloaderem i klikamy przycisk Erase-Write-Verify.

Poniższy link prowadzi do działającego AVRdude + gui + bootloader + plik z zapisanymi fusebitami:
http://ubuntuone.com/0Q0EF0V59re1Go8pax10MQ

Mikrokopter-tool
przed przystąpieniem do wgrywania bootloadera należy otworzyć plik avrdude_programmer.txt i odkomentować linijki:
[avrdude-config]
Programmer=usbasp
Port=
Parameter=-p m644
linijka parameter musi zawierać rodzaj procka. Dla ATmegi644 jest to -p m644 dla ATmegi644p jest to -p m644p. Nie wiem, czemu wymagane jest podanie rodzaju procesora w tym miejscu. Bez tego nie działało...

Następnie należy podmienić pliki avrdude dostarczone wraz z mk-toolem na te pobrane stąd:http://ubuntuone.com/0Q0EF0V59re1Go8pax10MQ
avrdude dostarczany przez mk nie obsługuje programatorów typu usbasp.

Następnym krokiem jest uruchomienie mk-toola a następnie otworzenie konsoli kryjącej się pod przyciskiem Firmware Update & Terminal....

Klikając prawym przyciskiem na czarnym tle i wybierając Flash Bootloader (ISP)... lub wciskając przycisk F10 otwieramy okienko w którym należy wskazać plik zawierający bootloader, do wgrania.

Dłuższą chwilę wyświetlane będą informacje dotyczące procesu wgrywania bootloadera.

Jeśli komuś przyda się ten tekst, proszę jedynie o założenie konta na ubuntu one z linku: https://one.ubuntu.com/referrals/referee/2417071/
Zapewniam, że canonicals jest bardzo spokojną firmą, która nie rozsyła spamu.
Zanim zadasz pytanie: http://rtfm.killfile.pl/
ODPOWIEDZ