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



Teraz jest 28 mar 2024, o 23:08


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 28 ] 
Autor Wiadomość
PostNapisane: 29 paź 2017, o 18:17 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

Mam problem z wgraniem bootloadera Arduino poprzez Arduino IDE 1.8.5. Posiadam programator ATB-USBasp 4.1. Mikrokontroler ATmega328p jest poprawnie wykrywany przez mkAVR Calculator.

W Arduino IDE wybieram płyktę: "Arduino/Genuino Uno, programator jako USBasp po czym wybieram opcje Wypal Bootloader.
Otrzymuje wówczas błąd w postaci:

avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'
Błąd przy wgrywaniu bootloadera.


Poszedłem krok dalej
Wzorując się na tym problemie http://forum.atnel.pl/topic17332.html


Wgrałem Avrdude z mkAVRCalculatora do katalogu C:\Program Files\Arduino\hardware\tools\avr\bin
i dodatkowo plik avrdude.conf z tego katalogu przeniosłem do C:\Program Files\Arduino\hardware\tools\avr\etc.

Jednak uzyskałem kolejny błąd podczas wypalania Bootloadera w postaci :

avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

Błąd przy wgrywaniu bootloadera.


Już skończyły mi się pomysły jak to rozwiązać :/
Z góry dzięki :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2017, o 19:28 
Offline
Użytkownik

Dołączył(a): 27 sty 2016
Posty: 192
Pomógł: 2

rc=-1 oznacza, że podłączenie uC szwankuje. Coś źle podłączyłeś za drugim razem (za pierwszym razem wykrył).



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2017, o 20:20 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

Nie wiem czemu tak się dzieje, nie zmieniałem nic w podłączeniu mikrokontrolera



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2017, o 20:33 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

widzisz w arduino w wersji 1.8X wprowadzono avrdude w wersji 6.3 a ten ma problemy ze współpracą z USBASP. Niestety samo wgranie innej wersji w sposób bezpośredni nie da rezultatów, ponieważ w arduino sam plik wykonywalny siedzi w jednym miejscu a plik konfiguracyjny też w innym. Dodatkowo nowa wersja nieco inaczej współpracuje z samym arduino i pliki konfiguracyjne aduino też trzeba zmodyfikować. Za chwilę postaram się wrzucić moją zmodyfikowaną wersję arduino 1.85



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2017, o 20:48 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

Było by super :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2017, o 21:06 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

Na chwilę obecną mam pod ręką arduino w wersji 1.84. Pliki konfiguracyjne arduino poprawione dla arduino nano i promini więc te na pewno działają (takie mam płytki arduino więc dla nich to konfigurowałem)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2017, o 21:14 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

ATmega328p pochodzi niestety od płytki Arduino UNO :/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 paź 2017, o 21:22 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

To może poprostu pobierz starszą wersję arduino która ma starszą wersję avrdude dostępną tu https://www.arduino.cc/en/Main/OldSoftwareReleases#previous wersja która powinna Ciebie zainteresować to 1.6.9



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 15:12 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

Pobrałem wersję Arduino IDE 1.6.9 podczas wypalania Bootloadera wyświetla się błąd o wspomnianej na początku treści:


avrdude: error: programm enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

Błąd przy wgrywaniu bootloadera.


Tym razem nic nie grzebałem w plikach Arduino IDE tylko po prostu zainstalowałem.
Podczas instalacji Arduino IDE zainstalowała mi sterownik do USBasp czego najnowsza wersja nie robiła, jednak programator nadal nie jest widoczny w narzędziach IDE, przy wyborze portu szeregowego.

W mkAVR Calculatorze nadal wszystko ok:

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 15:27 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2561
Pomógł: 126

BTW. Kolor czerwony jest zarezerwowany dla moderatorów.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 16:50 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1146
Lokalizacja: Kraków
Pomógł: 93

Programujesz poza arduino? Ustaw przez MKAVRCalculator taktowanie na inne niż wewnętrzny kwarc 1 MHz.
EDIT: Z tego, co widzę, ustawiony jest 8 MHz, ale z podziałem przez 8... zmień na wewnętrzny 8 MHz, ale bez podziału. Albo, jeśli masz podłączony kwarc (razem z kondensatorami), to ustaw taktowanie na zewnętrzne.
Wnioskuję, że jest taki problem, ponieważ w linijce z avrdude jest -b 375



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 17:47 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

Generalnie programuje poza Arduino, programowałem mikrokontrolery w uC ale teraz mam większy projekt więc chciałem skorzystać z wysokopoziomowych możliwości Arduino.

No właśnie nie bardzo mogę wyłączyć ten podział częstotliwości przez 8. Odznaczam tą opcje (CKDIV8) w Fusach Uproszczonych po czym klikam Zapis do AVR potem klikam Odczyt z AVR, no i zmieniono taktowanie. Jak wcisnę ponownie Sprawdź podłączony AVR to okazuje się ze znowu opcja CKDIV8 jest włączona.



Ostatnio edytowano 30 paź 2017, o 17:53 przez Kiriot_Onky, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 17:53 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

Kiriot_Onky napisał(a):
Podczas instalacji Arduino IDE zainstalowała mi sterownik do USBasp czego najnowsza wersja nie robiła
Pobierz sobie wersję nieinstalowalną, bo może coś masz w zmiennych środowiskowych namieszana, a wersja nieinstalowalna będzie działać niezależnie.
Kiriot_Onky napisał(a):
jednak programator nadal nie jest widoczny w narzędziach IDE, przy wyborze portu szeregowego.
ale programator nie będzie widoczny jako port com.
Aby wgrać bootloader musisz w arduino wybrać typ płytki, następnie w opcji programator wybrać USBASP a następnie wybrać opcję wypal bootloader.
Port com ma tylko wbudowany w płytkę konwerter USB na UART który na płytce UNO zbudowany jest na bazie procka atmega16U. Jeśli po podłączeniu płytki do USB nie ma portu do wyboru to możesz mieć albo uwaloną atmegę16U albo skasowany jej wsad a ten najlepiej wgrasz przez USB atmelowskim programem flip



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 17:58 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

Mam zainstalowany driver do programatora z mkAVR Calculatora. Porty COM w Arduino IDE działają w porządku. Jak przykładowo podłącze przez USB Arduino Mega to pojawia się dodatkowy port szeregowy z nazwą mojej płytki do wyboru.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 18:02 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

Kiriot_Onky napisał(a):
No właśnie nie bardzo mogę wyłączyć ten podział częstotliwości przez 8. Odznaczam tą opcje (CKDIV8) w Fusach Uproszczonych po czym klikam Zapis do AVR potem klikam Odczyt z AVR, no i zmieniono taktowanie. Jak wcisnę ponownie Sprawdź podłączony AVR to okazuje się ze znowu opcja CKDIV8 jest włączona.
Procek masz w płytce arduino czy na stykówce? Do płytki czy też stykówki masz podpięte coś jeszcze? Objawy jakie opisujesz wskazują na niestabilną komunikację programatora z prockiem, tak jakby coś dodatkowo obciążało linie programujące.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 18:07 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

Cóż procesor jest na płytce stykowej podpięty wg poniższego schematu:
Bez całej prawej strony, tych diód i rezystorów.

Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 18:08 
Offline
Użytkownik

Dołączył(a): 18 lut 2015
Posty: 164
Lokalizacja: Koszalin
Pomógł: 16

Jeśli masz mkavrcalculator to wgraj sobie wsad z folderu: Program Files (x86)\Arduino\hardware\arduino\avr\bootloaders\optiboot
ja wgrywam optiboot_atmega328.hex. Wcześniej ustawiam sobie fuse: FF DE FD.

Pozdrawiam



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 18:13 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

A masz na płytce rezonator 16MHz, bo na schemacie go nie ma, a arduino działa na zewnętrznym kwarcu!



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 18:14 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

raczyk napisał(a):
Jeśli masz mkavrcalculator to wgraj sobie wsad z folderu: Program Files (x86)\Arduino\hardware\arduino\avr\bootloaders\optiboot
ja wgrywam optiboot_atmega328.hex. Wcześniej ustawiam sobie fuse: FF DE FD.

Pozdrawiam


A mógłbyś powiedzieć gdzie w mkAVR Calculatorze jest opcja do wgrywania wsadów do mikrokontrolera ?

Nie mam kwarca podczepionego do Mikrokontrolera, zaraz zobaczę i powiem czy coś się zmieniło



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 18:19 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

W zakładce gdzie jest przycisk "sprawdź podłączony avr" pod przyciskiem po lewej wybierasz zapis a po prawej wybierasz rodzaj pamięci czyli flash a niżej musisz wskazać plik wsadu.
Obrazek



Ostatnio edytowano 30 paź 2017, o 18:24 przez xentis, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 30 paź 2017, o 18:24 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 26 sty 2016
Posty: 1146
Lokalizacja: Kraków
Pomógł: 93

Kiriot_Onky napisał(a):
A masz na płytce rezonator 16MHz, bo na schemacie go nie ma, a arduino działa na zewnętrznym kwarcu!
To później. Kolega na razie ma w ogóle problem z zaprogramowaniem czymkolwiek procka. Z tego, co już wiemy, nie zapisują się fuse bity.

Kolego Kiriot_Onky, zaznacz te opcje w mkavrcalculator, które masz zaznaczone na rysunku u mnie w załączniku, ustaw fusebity tak, jak mają być (czyli odznacz ckdiv) i daj "wykonaj"

Załącznik ;)
Obrazek



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2017, o 01:30 
Offline
Nowy

Dołączył(a): 16 lip 2017
Posty: 13
Pomógł: 0

Nie chciało mi się już dłużej z tym męczyć, pożyczyłem Arduino UNO od kolegi i za jego pomocą wypaliłem Bootloader, po drodze wywaliło error ale działa :D.
Czy do wgrywania wsadów mogę wykorzystać swój programator ATB-USBASP wgrywając je jakoś przez Arduino IDE ?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 31 paź 2017, o 07:31 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

Możesz wgrywać wsad za pomocą USBASP ale wtedy nie ikoną strzałki tylko trzeba z menu wybrać opcję "wgraj przy pomocy programatora". Jednakże musisz pamiętać że taka operacja wykasuje bootloader. Druga sprawa to skoro nie działało wypalenie bootloadera to marne szanse by działało wgrywanie wsadu. No chyba że przyczyną problemu była stykówka (swoją drogą skoro masz płytkę UNO to nie wiem po co ta zabawa ze stykówką która często jest kapryśna i właśnie ona jest czesto przyczyną problemów, było poprostu połaczyć programator USBASP z gniazdem ISP płytki UNO)

Wysłane przy użyciu Tapatalka



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 sie 2019, o 19:45 
Offline
Nowy

Dołączył(a): 26 maja 2016
Posty: 8
Pomógł: 0

Czy do tej pory udało się komuś odpalić Arduino IDE w najnowszej wersji wraz z programatorem USBASP 4.2?



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 18 sie 2019, o 20:52 
Offline
Użytkownik

Dołączył(a): 25 lip 2013
Posty: 2561
Pomógł: 126

Tak, wystarczy podmienić avrdude Arduino na Mirkowe :)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 sie 2019, o 14:32 
Offline
Nowy

Dołączył(a): 26 maja 2016
Posty: 8
Pomógł: 0

micky napisał(a):
Tak, wystarczy podmienić avrdude Arduino na Mirkowe :)


Z tego co wiem to najnowsze Arduino IDE nie ma takiej możliwości. Bo posiada AVR Dude polączone z programem. Próbowałem sposobów podanych na forum i niestety nie działa. Musiałem zejść na 1.6.9, wykonać polecenia z forum i wtedy ruszyło. Ale to nie są kroki na przód tylko w tył...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 sie 2019, o 16:43 
Offline
Użytkownik

Dołączył(a): 05 sty 2015
Posty: 393
Lokalizacja: Mielec
Pomógł: 14

A nieda sie w arduino ide generowac hex-a i wgrywać po rs232 np ftdi wykorzystać z mkavrkalkulator albo mkbootloader albo inna "wgrywajka" hex-a po rs232, i bootloader adruino wtedy nietkniety zostaje.

Może troche wiecej klikania ale zabieg wydajemi się jak najbardziej trafny.

Pozdrawiam.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 20 sie 2019, o 16:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

SaintRafik napisał(a):
Z tego co wiem to najnowsze Arduino IDE nie ma takiej możliwości. Bo posiada AVR Dude połączone z programem. Próbowałem sposobów podanych na forum i niestety nie działa. Musiałem zejść na 1.6.9, wykonać polecenia z forum i wtedy ruszyło. Ale to nie są kroki na przód tylko w tył...
Nie do końca. Da się podmienić tylko te nowsze wersje (nawet nieinstalowalne) mają avrdude w kilku miejscach i trzeba je wszystkie znaleźć (nie tylko w katalogu arduino ale również w katalogu użytkownika windows).
Dodatkowo trzeba jeszcze pogrzebać w pliku konfiguracyjnym bo anelowskie avrdude nieco inaczej przesyła informacje o fusebitach (chodzi o bity które nie są wykorzystane - teraz nie pamiętam w którą to stronę było ale jedna wersja w miejscu bitów nieużywanych wstawia 0 a druga 1, i po prostu nawet jak już arduino widzi programator to wywala błąd przy weryfikacji.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 28 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 2 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