Arduino: Sketch immer nach Erneuerung des Booloaders aufspielbar

Gast #4536938
Hallo,

ich habe folgendes Problem mit meinem Arduino Uno (ATMega 328P-PU)
Wenn ich einen Sketch (z.B. Blink aus den Beispielen) auf den Arduino 
hochladen möchte erhalte ich die Fehlermeldung:
sync(): not in sync: resp=0x00
Sobald ich den Bootloader mit Hilfe des MK2 und AtmelStudio draufspiele 
kann ich einmalig über den ArduinoIDE einen Sketch hochladen. Beim 
zweiten Versuch erhalte ich wieder die Fehlermeldung. Dann muss ich 
wieder den Booloader draufspielen und das Ganze geht von vorne los. Kann 
mir jemand erklären voran es liegt? Soltte ich mal den ATMega 328P-PU 
austauschen ?

Grüße, Esra
Gast #4537209
Dieter S. schrieb:
> Ich vermute eher ein Problem mit deinem USB-Kabel oder USB-Port.
> Kein richtiger Kontakt?

Das gleiche Kabel benutze ich auch bei meinem Arduino Mega 2560, und da 
klappt alles.

U. F. schrieb:
> Fuses richtg gesetzt?

Die Fuses sind beim AtmelStudio auf "EXTXOSC_8MHZ_XX_16KCK_65MS" 
eingestellt :
EXTENDED 0xFD
HIGH 0xD8
LOW 0xFF

Chris M. schrieb:
> Was hast du für eine IDE-Version?
> Versuch mal Arduino 1.6.5.

Ich habe die Version 1.7.9. Ich werde mal die Version 1.6.5 
ausprobieren. Jedoch muss ich dazu sagen, dass ich auch Matlab/Simulink 
benutze, dieser kann sich auch nur einmal verbinden, und zwar immer 
dann wenn ich den Booloader neu drauf spiele

Danke, Esra
Gast #4537365
einfach mal den Reset-Taster drücken und direkt danach aus der Arudino 
IDE flashen, Der Software-Autoreset aus der IDE scheint nicht immer 
100%ig zu funktionieren. Das wird auch hier der Fall sein.

Diesen Hinweis findet man aber auch, wenn man mal nach
"Arduino not in synch()"
sucht...

Nach dem drücken des Reset-Tasters müsstest du um die 500ms haben um den 
Flashvorgang anzustoßen.
Gast #4537367
Esra schrieb:
> Sobald ich den Bootloader mit Hilfe des MK2 und AtmelStudio draufspiele
> kann ich einmalig über den ArduinoIDE einen Sketch hochladen. Beim
> zweiten Versuch erhalte ich wieder die Fehlermeldung.
Liegt daran, das kein Programm da ist, das geladen wird, und der 
controller die ganze Zeit im Bootloader hängt. Ist ein Programm 
vorhanden muss man den Controller aber erst in den Bootloadermodus 
bringen. (Siehe mein vorheriger Post)
Gast #4537662
Esra schrieb:
> Die Fuses sind beim AtmelStudio auf "EXTXOSC_8MHZ_XX_16KCK_65MS"
> eingestellt :
> EXTENDED 0xFD
> HIGH 0xD8
> LOW 0xFF

Die Arduino IDE setzt/erwartet beim Uno:
uno.bootloader.low_fuses=0xFF
uno.bootloader.high_fuses=0xDE
uno.bootloader.extended_fuses=0x05
uno.bootloader.unlock_bits=0x3F
uno.bootloader.lock_bits=0x0F


Damit ist schon mal der Reset Vector, die Bootloader Adresse, falsch.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 10 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.