Hi!
Ich bin ziemlich neu hier und kenn mich auch noch nicht sonderlich gut mit dem Arduino aus. Allerdings dachte ich, da ich sicherlich öfters mit Fragen hier antanzen werde, dass ich dann auch mein Wissen teilen sollte, sofern das relevant erscheint.
Vor Kurzem hatte ich folgendes Problem mit meinem Arduino Uno:
Nachdem ich versucht habe, die Kommunikation zwischen Board und serial monitor zu aktivieren schien es so, als ob der Arduino irgendwie in einer Schleife gehangen hat, die ihn so beschäftigt hat, dass die Software auf dem PC (version 0022) sich mehr oder weniger aufgehängt hat. Sie hat den Arduino auch nicht mehr erkannt, was bewirkte, dass ich keinen anderen code mehr hochladen konnte. Nach ein paar Versuchen, das Problem mit der Reset Taste zu beseitigen stellte ich fest, dass einen ganz kurzen Moment nach der Betätigung dieser das Board erkannt wurde und die Software auch kurz wieder funktionierte. Diese Zeit reichte aber nicht aus, um einen harmlosen Code hochzuladen.
Nach dem ersten Panikanfall hab ich angefangen, zu googlen, aber keine Lösung dafür gefunden. Eventuell hab ich nur die falschen Begriffe verwendet aber darum dachte ich, ich sollte meine Lösung veröffentlichen, zumal mir gestern in einer anderen Situation das gleiche nochmal passiert ist. In einem anderen Forum (das ich leider nicht mehr finde) stand bei der gleichen Problematik, man müsse den atmega328 austauschen, was ich bisher verhindern konnte.
Nachdem ich das Board bzw. zumindest den MC sowieso abgeschrieben habe dachte ich, ich könnte einfach mal rumprobieren und bin dann auf folgende Lösung gekommen:
- Board ausstecken
- Code in der Software vorbereiten (ich habe einfach folgenden verwendet, da man scheinbar kein "leeres Blatt" hochladen kann)
void setup(){} void loop(){}
- Reset Taste auf dem Board gedrückt halten
- Board einstecken, kurz warten
- Code hochladen, was eine Fehlermeldung provoziert
- Reset Taste loslassen
- Code nochmal hochladen
Ich kann natürlich keine Verantwortung für eventuelle Folgeschäden übernehmen - bei meinem Arduino Uno gab es bisher aber keine.
Falls das Verfahren schon bekannt ist - sorry habs gesucht und nicht gefunden
Aber eine Frage hätte ich noch: kann sich jemand vorstellen, dass das Board oder der Chip dadurch beschädigt werden? Gibts vielleicht sogar eine bessere Lösung?