• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
USBasp działa z UNO ale nie z samodzielną ATmegą
#1
Witam

Kupiłem niedawno taki oto programator USBasp:
https://botland.com.pl/pl/programatory/1...zarny.html \

Zainstalowałem sterowniki za pomocą programu Zagid (libusbK v3.0.7.0) i używając skrótu Shift+Ctrl+U mogę wgrywać szkice na Arduino Uno z ATmegą328 na pokładzie(dla jasności) bez problemu.
Tu pojawia się pierwszy problem, w Arduino IDE nie widzę opcji: wgraj przez programator. Ogólnie mogę wgrywać programy więc nie przeszkadza za bardzo.

Nie mogę za to wgrać programu na samodzielną ATmegę328 którą mam wlutowaną na płytkę (układ działa i wgrywałem szkice używając Arduino UNO jako programatora ale RX, TX, przeniesione układy z Arduino też działają bez problemu.
Otrzymuje taki błąd: "wybrany port szeregowy nie istnieje albo Twoja płytka nie jest podłączona"
Co przegapiłem? Może muszę coś ustawić w Arduino IDE, zmienić coś w plikach, przekopałem już sporo internetu ale nie chcę za bardzo grzebać żeby nie popsuć Smile. Będę wdzięczny za każdą radę.
 
Odpowiedź
#2
(07-12-2018, 22:11)LordShadow47 napisał(a): Nie mogę za to wgrać programu na samodzielną ATmegę328 którą mam wlutowaną na płytkę

Ta samodzielna mega ma bootloader? Przejściówkę USB dobrze podłączasz? Wybierasz poprawny nr portu COM?
 
Odpowiedź
#3
Trzymając shift i klikając strzałkę wgrywasz przez programator, jest też opcja w menu szkic "wgraj przez programator". Nie wgrywa Ci do osobnej atmegi, bo i nie wgrywałeś do UNO. Dopóki nie wybierzesz wspomnianych opcji nie ma znaczenia jaki programator wskazałeś, wgrywa i tak przez bootloader. Żeby sprawdzić czy programator dobrze działa sprawdź ten program: https://rctruck.pl/forum/download/file.php?id=35515 bo tu ciężko zrobić taką głupotkę jak w Arduino IDE.
 
Odpowiedź
#4
(08-12-2018, 00:32)es2 napisał(a):
(07-12-2018, 22:11)LordShadow47 napisał(a): Nie mogę za to wgrać programu na samodzielną ATmegę328 którą mam wlutowaną na płytkę

Ta samodzielna mega ma bootloader? Przejściówkę USB dobrze podłączasz? Wybierasz poprawny nr portu COM?

 Ta samodzielna ATmega ma wgrany bootloader ale z tego co wiem jeśli wgrywam przez USBasp nie korzystam z bootloadera, wgrywając program na UNO bootloader się nadpisuje i muszę wgrać go ponownie jeśli chcę programować potem normalnie. Jeśli chodzi o port COM to przy wgrywaniu na UNO nic nie wybieram i działa, z resztą tam nie ma co wybierać mam tylko COM1 ale nie ma tam żadnego urządzenia. USBasp nie korzysta z COM
 
Odpowiedź
#5
Witam ponownie to znów ja. Rozwiązałem problem, wyjąłem ATmegę z Arduino i podłączyłem jedynie na płytce stykowej zewnętrzny oscylator plus te dwa kondensatory 22pF, podłączyłem się do programatora bezpośrednio (MISO, MOSI, SCK, RESET, GND, 5V) W Arduino IDE wybrałem płytkę Arduino Uno, programator USBasp, wybrałem opcję wgraj przez programator i działa. Problem musiał tkwić w połączeniach na moim "klonie".

Klon niby działa prawidłowo ale sześć pinów które wyprowadziłem aby móc podłączyć programator musiały być źle polutowane czy coś w tym stylu.

No i dla jasności jak pisałem o tym że na Arduino wgrywałem bez problemu przez programator, naprawdę tak było za każdym razem wymazywałem bootloader i nie mogłem programować przez usb, musiałem wgrać bootloader znów używałem do tego USBasp i działało bez problemu.

Może ten wątek rozwiąże problem kogoś innego w przyszłości Smile
Dla mnie temat do zamknięcia. Dziękuje za wszystkie odpowiedzi.
 
Odpowiedź
#6
Może pomoże, a może nie. Nie wierzę, że w menu szkic nie masz opcji "Wgraj używając programator" (przy którym masz również pokazany skrót CTRL+SHIFT+U). Jak miałeś wybrany USBASP to błąd z AVR DUDE w Arduino IDE byłby taki:
Kod:
Programmer Type : usbasp
        Description     : USBasp, http://www.fischl.de/usbasp/

avrdude: auto set sck period (because given equals null)
avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
        Double check connections and try again, or use -F to override
        this check.


avrdude done.  Thank you.

the selected serial port
does not exist or your board is not connected
Błąd z AVR LAB++ przy tym samym ustawieniu:
Kod:
avrdude.exe: set SCK frequency to 93750 Hz
avrdude.exe: error: program enable: target doesn't answer. 1
avrdude.exe: initialization failed, rc=-1
            Double check connections and try again, or use -F to override
            this check.


avrdude.exe done.  Thank you.
Jak widzisz podzieliłeś się akurat linijką doklejaną przez Arduino IDE do każdego błędu komunikacji, co raczej nie pomaga w diagnozie.
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości