Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 25 kwi 2024, o 06:31


Strefa czasowa: UTC + 1





Utwórz nowy wątek Ten wątek jest zablokowany. Nie możesz w nim pisać ani edytować postów.  [ Posty: 17 ] 
Autor Wiadomość
PostNapisane: 27 lis 2015, o 18:07 
Offline
Nowy

Dołączył(a): 27 lis 2015
Posty: 8
Pomógł: 0

Witam,

Od dłuższego czasu używam Eclipse (instalowalem z poradnikow https://www.youtube.com/watch?v=A_neNE0-KUM) programowałem Atmega8, Atmega32 wszystko chodzi bez problemu.

Niedawno dostałem płytkę Arduino Mega 2560. Podłączam ją przez Usbasp, eclipse ładnie czyta procesor (2560), program się kompiluje, gdy wgrywam program też wszystko idzie bez problemów ale płytka w ogóle nie reaguje.
Myślałem, że jest coś nie tak z płytką ale mój profesor wysłał mi gotowego hex'a (nie wiem w czym skompilowane), wgrałem i działa.

Czyli problem jest w kompilacji programu.

Może ktoś mi z tym pomóc?



Góra
 Zobacz profil  
 
PostNapisane: 27 lis 2015, o 21:15 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 13 mar 2014
Posty: 27
Lokalizacja: Olsztyn
Pomógł: 0

Cały dzień dziś walczyłem z tym samym problemem.
Na koniec okazało się, że MEGA 2560 programuje się tylko z programu Ardurino.
Gdzie interfejs i składnia jest do .....
Może ktoś zna sposób na przerobienie Eclipse (moja wersja LUNA) albo lepiej mega 2560 na normalną atmegę ?



Góra
 Zobacz profil  
 
PostNapisane: 27 lis 2015, o 22:20 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Nie ma czegoś takiego jak procesor lub płytka działająca tylko pod Arduino!
Co znaczy, że program Ci nie idzie? Nie działa Ci nawet podstawowe miganie diodą?
Czy fuse bity masz odpowiednio ustawione dla swoich potrzeb?

--
Pozdrawiam,
Robert

------------------------ [ Dodano po: 3 minutach ]

A'propos eclipse. Jak już dojdziesz do porozumienia z płytką, to zmień jego wersję na Mars i toolchaina atmela.
Masz to ładnie opowiedziane przez Mirka:
http://forum.atnel.pl/topic12450.html
http://mirekk36.blogspot.com/2015/07/eclipse-start-plus-pierwszy-program.html



Góra
 Zobacz profil  
 
PostNapisane: 28 lis 2015, o 00:41 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 mar 2014
Posty: 356
Lokalizacja: Pruszków
Pomógł: 15

Zobacz sobie jaki ja miałem problem http://forum.atnel.pl/topic13585.html
ale udało mi się go rozwiązać i teraz bez problemu programuję sobie w eclipsie w C a programuję przez bootloader Arduino.

Bardzo często miałem problem kiedy pisałem wgrywałem i nie było reakcji a okazywało się , że wyłączona była opcja autosave w workspace.

Zrób jakąś zmianę w programie jakąkolwiek dopisz sobie spację w komentarzu i klikając w kompilację zobacz czy klikają się obie ikonki ta z pojedynczą dyskietką i ta z kilkoma dyskietkami
u mnie klikała się tylko ta jedna ikonka z jedna dyskietką i efekt był taki, że stara wersja programu był ładowana do procka.


Pozdrawiam Paweł.



Góra
 Zobacz profil  
 
PostNapisane: 28 lis 2015, o 15:48 
Offline
Nowy

Dołączył(a): 27 lis 2015
Posty: 8
Pomógł: 0

Obrazek

Moje ustawienia w Eclipse.


Dodam jeszcze, że przez Atmel Studio jak skompiluje i wgram do procka to działa elegancko, albo jak wezmę hex'a z Atmel Studio i wgram przez Eclipse to też działa. Czyli problem w kompilacji w Eclipse.



Góra
 Zobacz profil  
 
PostNapisane: 28 lis 2015, o 17:46 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 mar 2014
Posty: 356
Lokalizacja: Pruszków
Pomógł: 15

A czy mógłbyś wkleić loga z consoli eclipsa po kompilacji i wgraniu
i jeszcze drugiego po wykonaniu "clean"

i jeszcze zrób screen-shota ustawienia workspace

Obrazek

wchodzisz w Window --> Preferences --> General --> Workspace

A i zdecydowanie eclipsa zainstaluj w 100% zgodnie z tymi poradnikami
http://mirekk36.blogspot.com/2015/07/eclipse-start-plus-pierwszy-program.html



Góra
 Zobacz profil  
 
PostNapisane: 28 lis 2015, o 18:56 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Najważniejsze teraz to jak już napisał P3ndz3l3k, wklej informacje z konsoli z kompilacji projektu oraz z wgrywania programu do układu.

Czy w układzie na pewno masz założone elementy (diody) na porcie B?

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
 
PostNapisane: 30 lis 2015, o 22:14 
Offline
Nowy

Dołączył(a): 27 lis 2015
Posty: 8
Pomógł: 0

kompilacja

22:08:59 **** Incremental Build of configuration Release for project ARDUINO_MEGA_2560_projekt ****
make all
Invoking: Print Size
avr-size --format=avr --mcu=atmega2560 ARDUINO_MEGA_2560_projekt.elf
AVR Memory Usage
----------------
Device: atmega2560

Program: 306 bytes (0.1% Full)
(.text + .data + .bootloader)

Data: 0 bytes (0.0% Full)
(.data + .bss + .noinit)


Finished building: sizedummy


22:09:00 Build Finished (took 141ms)

wgrywanie:
Launching C:\Program Files (x86)\Atmel\AVR Tools\AVR Toolchain\bin\avrdude -pm2560 -cusbasp -Uflash:w:ARDUINO_MEGA_2560_projekt.hex:a
Output:

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x1e9801
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "ARDUINO_MEGA_2560_projekt.hex"
avrdude: input file ARDUINO_MEGA_2560_projekt.hex auto detected as Intel Hex
avrdude: writing flash (306 bytes):

Writing | ################################################## | 100% 2.54s

avrdude: 306 bytes of flash written
avrdude: verifying flash memory against ARDUINO_MEGA_2560_projekt.hex:
avrdude: load data flash data from input file ARDUINO_MEGA_2560_projekt.hex:
avrdude: input file ARDUINO_MEGA_2560_projekt.hex auto detected as Intel Hex
avrdude: input file ARDUINO_MEGA_2560_projekt.hex contains 306 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 1.35s

avrdude: verifying ...
avrdude: 306 bytes of flash verified

avrdude done. Thank you.

avrdude finished

Źle wstawiony obrazek - Różowo-zielony J.

Korzystam z Eclipse Luna

Program jest dobry, bo jak go kompiluje na Atmel Studio i wgrywam to działa poprawnie

Chyba, że spróbuje jeszcze od nowa zainstalować eclipse może coś pomoże



Góra
 Zobacz profil  
 
PostNapisane: 30 lis 2015, o 22:38 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

A odczytaj jak masz w układzie ustawione fuse bity.
Nie masz przypadkiem ustawionego skoku do bootloadera albo włączonego watchdoga?

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
 
PostNapisane: 26 sty 2016, o 17:36 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 13 mar 2014
Posty: 27
Lokalizacja: Olsztyn
Pomógł: 0

Chciałbym odgrzebać problem, jak powinny być ustawione fuse bity?
Mam taką zabawkę (klon arduino 2560) napisałem mruganie diodą najprościej jak się da.
programując przez ISP nic się nie dzieje. Jak wgram bootloader wtedy przez kabel USB programuje tylko z ID Arduino.
Jednakże chciałbym się nauczyć w C pod Eclipse.
Ktoś coś podpowie, bo posty z forum.atnel już przestudiowałem.



Góra
 Zobacz profil  
 
PostNapisane: 26 sty 2016, o 18:00 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Wgraj z arduino program by cokolwiek ci działało (np. zwykłe miganie diodą) i będziesz miał na początek poprawnie ustawione fuse bity by zacząć coś testować - np. miganie diodą napisane w C.

Pamiętaj by w eclipse wybrać odpowiedni procesor oraz taktowanie.
Przy programowaniu poprzez eclipse nie są wysyłane do avrdude ustawienia dla fuse bitów (chyba, że to specjalnie ustawisz). Więc kolejne wgrywania programów Ci ich nie zmieniają.

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
 
PostNapisane: 26 sty 2016, o 18:32 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 13 mar 2014
Posty: 27
Lokalizacja: Olsztyn
Pomógł: 0

Nic to nie pomogło.
Eclipse raczej jest dobrze ustawiony, bo już na nim trochę działam, problem jest jedynie z tą płytką.
Napomknę tylko, że jak wgrywam boot loader używam "pony pong".
Z ID Arduino zgłasza mi błąd :
avrdude: warning: cannot set sck period. please check for usbasp firmware update.

Po 6 podejściach do płytki stwierdzam, że to wina płytki (procesorka)
Już drugi raz "chińczyka" kupiłem i rozpadł mi się w rękach.
Trzeciego nie będzie.

Dzięki za zainteresowanie.



Góra
 Zobacz profil  
 
PostNapisane: 26 sty 2016, o 19:37 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Cytuj:
Po 6 podejściach do płytki stwierdzam, że to wina płytki (procesorka)
Już drugi raz "chińczyka" kupiłem i rozpadł mi się w rękach.
Trzeciego nie będzie.

Dzięki za zainteresowanie.

Za szybko się poddajesz. Jak masz działającą płytkę pod arduino, to MUSI ci zadziałać pod eclipse.
Niestety za mało wiadomo, co i jak i czym robisz i co ci działa a co nie i jakie są te efekty niedziałania.

Ogólnie to "chińczyki" są do luftu. Ale nie może być tak, ze w arduino działają a w eclipse nie.

Czy bootloader wgrywa Ci się poprawnie? Czym to robisz - jaki programator i jakim oprogramowaniem.
Jak już masz bootloader, to czy na pewno działa Ci po USB (używając bootloader) wgrywanie programów z Arduino?

Czy w eclipse chcesz programować poprzez bootloader, czy programatorem zewnętrznym? Jak masz skonfigurowany w eclipse programator?
W ostatnim mailu jest w logu, że korzystasz z USBasp? Nim chcesz programować?

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
 
PostNapisane: 26 sty 2016, o 21:12 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 13 mar 2014
Posty: 27
Lokalizacja: Olsztyn
Pomógł: 0

Zacznę od początku:
Gdy podłączam programator zakupiony razem z BB zadziała mi tylko raz przy następnej próbie wgrania softu wyskakuje błąd -r czy -1 (błąd podłączenia czy komunikacji) muszę rozłączyć i włączyć i znów tylko raz. Przełożyłem na stary programator za 10 złotych z Allegro i nie zrywa komunikacji mkAVRCalkulator widzi procka (zmieniałem fusy na wew i zew taktowanie) to też działa.
z ID Arduino jak chciałem wgrać bootloader'a wyskakiwał błąd:

avrdude: warning: cannot set sck period. please check for usbasp firmware update.

Programem SinaProg wgrywam na końcu wyskakuje błąd veryfikacji. Ale mogę z ID już wgrywać programy przez USB.
najprostsze co mogłem zrobić to podłączyłem 8 LED (taki zrobiłem sobie moduł pomocniczy) i i bawiłem się tymi diodami na ile mi wiedza pozwalała (C++) a więc diody tańczyły w lewo w prawo śmigło itd wszystko grało.
Gdy wracałem do programatora i eclipse po wgraniu programu cisza 0 błędów transmisja odbyła się a układ nie reaguje.
Żeby było pewne zadeklarowałem wszystkie porty jako wyjścia i na przemian zapalałem i gasiłem, żadna dioda nie mrugnęła.

Kombinacji zrobiłem dużo przewertowałem neta, na forum atnela był podobny problem ale nie było podanego rozwiązania (stąd te pytanie na początku o fusy)

pozdrawiam Marek



Góra
 Zobacz profil  
 
PostNapisane: 28 sty 2016, o 03:58 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 11 mar 2014
Posty: 1475
Pomógł: 167

Cytuj:
Gdy podłączam programator zakupiony razem z BB zadziała mi tylko raz przy następnej próbie wgrania softu wyskakuje błąd -r czy -1 (błąd podłączenia czy komunikacji) muszę rozłączyć i włączyć i znów tylko raz. Przełożyłem na stary programator za 10 złotych z Allegro i nie zrywa komunikacji mkAVRCalkulator widzi procka (zmieniałem fusy na wew i zew taktowanie) to też działa.
A to ciekawostka. W sam raz dla Mirka, działa z kocim programatorem a z ATB-USBasp jest problem (bo taki chyba kupiłeś z BB?).
Czy jak resetujesz układ poprzez programator z mkAVRCalculatora, to coś zmienia?
Czy ATB-USBasp musisz ponownie odłączyć i podłączyć do portu USB, czy wystarczy odłączyć i ponownie podłączyć po ISP Mega2560?

Cytuj:
z ID Arduino jak chciałem wgrać bootloader'a wyskakiwał błąd:

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
To co zacytowałeś, to jest tylko ostrzeżenie a nie błąd. Podaj całą zawartość konsoli. Czy masz problem z ładowaniem oboma programatorami USBasp?
Jaką masz wersję avrdude pod arduino? Czy podpinałeś tę z mkAVRCalculatora?

Cytuj:
Programem SinaProg wgrywam na końcu wyskakuje błąd veryfikacji. Ale mogę z ID już wgrywać programy przez USB.
Czy nie masz przypadkiem ustawionych lock bitów, które powodują (do tego służą) brak możliwości odczytu pamięci?

Cytuj:
Gdy wracałem do programatora i eclipse po wgraniu programu cisza 0 błędów transmisja odbyła się a układ nie reaguje.
Żeby było pewne zadeklarowałem wszystkie porty jako wyjścia i na przemian zapalałem i gasiłem, żadna dioda nie mrugnęła.
Jak wgrywasz z eclipse za pomocą USBasp to kasujesz najpierw całą pamięć, więc kasujesz bootloader. A przez fuse bity masz ustawiony skok po resecie do sekcji bootloadera i dlatego pewnie program się nie uruchamia. Wyłącz w fuse bitach skakanie do bootloadera, albo ustaw sobie w eclipse programator korzystający z bootlodera po usb i tak wgraj program.

--
Pozdrawiam,
Robert



Góra
 Zobacz profil  
 
PostNapisane: 5 gru 2019, o 22:11 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 wrz 2013
Posty: 47
Pomógł: 1

DeTronix napisał(a):
Heyka
Sprawdzając krok po kroku dotarłem ponownie do Fusebitów i ich porównanie z zapisanymi dało mi do myślenia, że coś jest nie tak z HFuse bo miałem tam 0xD8. I zaczęło się Eclipse za którymś razem programowania wyświetlacza doprowadziła do utraty transmisji/błędnej komunikacji i doszło do wyżej wymienionych efektów, podmiany HF. Ponowna zmiana na OxD9 rozwiązała problem a procesor ożył i po mimo kilkukrotnych próbach programowania diody czy wyświetlacza wszystko jest Ok. Dziwne ale jak widać da się. Tyle na temat Pozdrawiam



Dziękuję Ci :D uratowałeś mi dzień :D D9 rozwiązuje problem! (mimo, że odczytany to D8!!!)

_________________
Złoty Szpadel od Pana Mirka! Dziękuję.



Góra
 Zobacz profil  
 
PostNapisane: 5 sty 2020, o 15:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 20 wrz 2013
Posty: 47
Pomógł: 1

Troszeczkę zgłębiłem temat i działa to tak:

Jeżeli korzystasz z AVRDudess ( programując po ISP ) i nim wgrywasz wsad <- to, żeby działa Atmega prawidłowo musisz ustawić D9.

Natomiast jak chcesz zrobić klona Arduino, (programować po USB z wykorzystaniem CH340 podłączonego do Tx0 i Rx0) to ustawiasz w AvrDudess D8 i wgrywasz wsad wraz z bootloaderem (można łatwo na kompie odszukać takiego hexa, ładnie jest to opisane) > a potem już normalnie jest wykrywany w środowisku Arduino. Następnie wgrywasz w zasadzie to samo, ale już poprzez skecza i dopiero działa prawidłowo.

Podsumowując:

...........ISP-------Arduino
L..........FF---------FF
H..........D9---------D8
E..........FD---------FD
LB.........FF---------3F (i tak wraca na FF)

Mam nadzieję, że pomogłem bo 2dni walczyłem :* :)

[ mirekk36 - wątek zamykam przed archeologami ]

_________________
Złoty Szpadel od Pana Mirka! Dziękuję.



Góra
 Zobacz profil  
 
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Ten wątek jest zablokowany. Nie możesz w nim pisać ani edytować postów.  [ Posty: 17 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 0 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO