Arduino Bootloader auf ATMega328P spielen: programmer is not responding

OP #4122260
Lesenswert?

Hallo zusammen,
ich habe mir vor kurzem einen Arduino gekauft und auch schon angefangen 
mit ihm Prgogrammieren zu lernen. Nachdem ich nun jedoch gerne auch 
mehrere Mikrocontroller programmieren würde habe ich mir noch einen 
ATMega328P gekauft. Ich habe wie 
hier(http://www.arduino.cc/en/Tutorial/ArduinoToBreadboard) beschrieben 
den Bootloadeer aufgespielt und erhalte auch eine Erfolgsmeldung.
Wenn ich dann jedoch versuche den Mikrocontroller wie bei beschrieben 
per TX bzw. RX anzuschließen bekomme ich eine Fehlermeldung. Was mich 
jedoch wundert ist, dass auch der mit dem Arduino mitgelieferte Chip 
sich nicht über diese Schaltung programmieren lässt. Im Arduino selbst 
jedoch lässt er sich wunderbar programmieren. Der neue ATMega328 mit 
selbstaufgespieltem Bootloader lässt sich jedoch selbst im Arduino 
"drinnen" nicht programmieren. Ich erhalte die Fehlermeldung:

avrdude: Version 6.0.1, compiled on Mar 30 2015 at 14:56:06
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "C:\Program Files 
(x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

         Using Port                    : COM3
         Using Programmer              : arduino
         Overriding Baud Rate          : 115200
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x36
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x36

avrdude done.  Thank you.

Probleme beim Hochladen auf die Platine. Hilfestellung dazu unter 
http://www.arduino.cc/en/Guide/Troubleshooting#upload .


Was mache ich falsch? :( Es müsste doch eigentlich am Bootloader liegen 
da der Mikrocontroller mit dem Bootloader versehen werden konnte und der 
ATMega328P des Arduino selbst funktioniert. Kann es sein das ich einen 
falschen Bootloader habe?

Gustav
Gast #4122388
Lesenswert?

Gustav Müller schrieb:
> nicht, da das Kabel bzw der Arduino funktionieren sollten. Kann es also
> sein das ich einen falschen Bootloader habe?
Was hast du denn in der IDE ausgewählt? Einfach nochmal flashen und 
darauf achten dass der richtige MC ausgewählt wurde.

Kann auch sein dass dein nackter 328p im Werkszstand mit internem 8MHz 
Oszi läuft. Check mal die Fuses, obwohl die eigentlich beim Flashen des 
Bootloaders mitgesetzt werden, iirc.

Check deine Verkabelung nochmal, vertausch mal TX und RX, vielleicht 
reagiert er deshalb nicht.
OP #4122395
Lesenswert?

Also den richtigen MC habe ich ausgewählt, der läuft auch mit internem 
Oszillator da ich im Moment keinen externen zur Hand habe. Im Moment 
habe ich den Mikrocontroller im Arduino "drinnen" weshalb ja die 
Verkabelung eigentlich passen müsste. Was genau meinst du mit check mal 
die Fuses? (bin leider noch ein blutiger Anfänger) :)
Gast #4122402
Lesenswert?

So wie das dort auf der Seite dargestellt ist ist es ein wenig sinnfrei.
Wenn du mit dem Arduino einen nackten 328p flashen kannst, kannst du 
auch gleich das Programm damit draufflashen, da brauchst keinen 
bootloader mehr.
Später ein Arduino mit rausgehbeltem MC als USB2Serialconverter zu 
missbrauchen um einen nackten 328p mit Bootloader anzusprechen ist 
einfach überflüssig.
OP #4122409
Lesenswert?

Also beim flashen des Bootloaders habe ich aus den Beispielen das 
ISP-Sketch auf den MC im Arduino gespielt. Ich denke die Kabel 
funktionieren, da ich den Arduino mit mitgeliefertem MC per Arduino IDE 
programmieren kann. Ich meinte, dass ich vlt. ein komplett falschen 
Bootloader aufgespielt habe der die Kommunikation stört. @avr(Gast) wie 
würde es den funktionieren ein Programm ohne Bootloader aufzuspielen?
Gast #4122413
Lesenswert?

Max Mustermann schrieb:
> Was soll der Bootloader ( der Code den du auf ein Target flashen willst)
> mit dem erreichen des programmers zu tun haben
Lies die verlinkte Seite. Dort wird später der nackte Arduino (also ohne 
328p) genauer nur dessen USB2Serial genutzt um den nackten 328p der 
einen Bootloader hat eben über diesen anzusprechen.
Gast #4122432
Lesenswert?

Gustav Müller schrieb:
> @avr(Gast) wie
> würde es den funktionieren ein Programm ohne Bootloader aufzuspielen?

Genauso wie du den bootloader geflasht hast.

* "Board" dein Arduino auswählen.
* Serial/USB auswählen wo der Arduino drannhängt
* Programmersketch flashen
* Entspr. verkabeln.
* Du lädst dein Sketch das auf den nackten 328p soll in die IDE
* "Programmer" Arduino as ISP
* "Board" auswählen:Eintrag für den passenden Zielmikrocontroller 
(ATmega328p on breadboard @ 8MHz internal Oszillator oder so ähnlich) 
auswählen.
* Datei/"Upload mit Programmer"

Jetzt sollte dein PRogramm auf dem nackten 328p sein.
Gast #4122438
Lesenswert?

Gustav Müller schrieb:
> Verstehe ich das also richtig, dass ich gar keinen Bootloader für den
> ATMega328 brauche sondern auch ohne Programme aufspielen kann?

Genau. Den brauchst du nur wenn du später diesen Chip per USB wie einen 
normalen Arduino flashen willst. Da er aber nackt ist braucht man noch 
einen USB2SErial Adapter. In deinem Link oben nutzen sie den von einem 
Arduino, sowas hat man aber normalerweise als Separaten Adapter oder 
gleich einen billiges Programmiergerät.
Da in deinem Link vom Arduino später nur der USB2Serial genutzt wird und 
jedesmal erst der Chip rausgeheblt werden muss, kann man sich das 
sparen, der Arduino hängt ja eh schon am Rechner, dann man auch direkt 
über diesen flashen. Ich glaube das ist auch mehr so ne Art Demo in dem 
Link damit man sieht dass der Bootloader funktioniert.
Gast #4122445
Lesenswert?

Gustav Müller schrieb:
> Genau diesen Schritte habe ich gemacht wobei ich wie gesagt den
> Arduino
> Bootloader auf dem MC habe. Dann kam jedoch immer die Fehlermeldung
> "programmer is not responding". :(

Also wenn er den Bootloader flashen konnte, dann kann er auch ein 
normales Programm flashen. Der fungiert als ISP, da brauchts keinen 
bootloader, sonst würde man nicht mal den Bootloader draufbekommen.

Hast du das Programmiersketch vorher auch geflasht?
OP #4122449
Lesenswert?

Ich habe das Arduino ISP Sketch aus den Beispielen erst auf den 
integrierten MC aufgespielt dann Programmer auf Arduino as ISP und 
Platine ATMega328 @ 8MHz internal clock umgestellt und dann auf 
Bootloader brennen geklickt mit der Verkabelung der Arduino Seite. Wie 
müsste die Verkabelung aussehen wenn ich eine normales Programm 
aufspielen will?
OP #4122507
Lesenswert?

Ok ich glaube mir ist erst jetzt der Inhalt deiner Aussage klar 
geworden. :) Trotzdem habe ich noch ein Problem. :( Wenn ich den Arduino 
als ISP einstelle (also ISP Sketch aufspiele und bei Programmer Arduino 
as ISP einstelle) kann ich den Bootloader brennen (also sollte die 
Verkabelung passen), wenn ich alles gleich lasse aber statt Bootloader 
brennen auf Upload drücke erscheint aber die Fehlermeldung:

avrdude: stk500v2_ReceiveMessage(): timeout

1. Was mache ich falsch?
2. Kann ich mein Programm als .hex Datei aus dem temp Ordner von windows 
holen
   und als bootloader umbennen, sodass er bei "Bootloader brennen" 
aufgespielt
   wird?

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren