RoboPunk
07.12.2009, 18:09
Hi,
ich bin jetzt schon ne ganze Zeit lang am Basteln und versuche mit meinem Atmega8 über den UART eine Kommunikation mit dem PC herzustellen.
Das hat gestern Abend auch noch funktioniert, bis ich ein etwas abgeändertes Programm übertragen wollte. Da wollte mein Programmer (AVR ISP mk 2) aber nicht mehr in den Programming Mode springen. Daraufhin habe ich mir im AVR Studio nochmal die Fuses angeschaut und das CKOPT-Fuse war nicht mehr gesetzt (hab ich aber vorher gesetzt gehabt). Im Datenblatt des Atmega steht, dass es bei einem 16Mhz Quarz aber gesetzt werden muss. Wie wichtig ist es, das Fuse zu setzten und wie bekomm ich meinen Atmega wieder zum laufen? Ich kann die Fuses nicht mehr umprogrammieren weil ich immer den Fehler bekomme, dass die ISP-Frequenz kleiner als ein Viertel der Boardfrequenz sein muss. Hab sie aber schon so niedrig wie möglich gestellt.
Gut, zwischenzeitlich hat sich mein Problem auf wundersame Weise gelöst. Auf einmal konnte ich die Fuses doch setzten, obwohl ich überhaupt nichts verändert habe. An was kann das liegen dass es manchmal funktioniert und manchmal wieder nicht?
Ich hab die Schaltung auf dem Steckbrett aufgebaut und mich an die Vorlage im Wiki gehalten (AVR Einstieg). Kann es sein, dass die Beine der zum Quarz gehörenden Kondensatoren evtl zu lang sind? Das eine Bein konnte ich kürzen, das andere ist aber immmer noch ca 1,5 cm lang.
Bitte um Vorschläge weil mich mein µC gerade ganz schön verwirrt.
EDIT:
Gut, jetzt ist das Problem wieder da. Hab absolut nichts verändert. Bei den Fuses ist das CKOPT und BODEN nicht gesetzt, außerdem hat sich die Startup-Time verändert.
Die anderen Fuses sind wie sie waren, allerdings hab ich die auch davor nicht verändert.
ich bin jetzt schon ne ganze Zeit lang am Basteln und versuche mit meinem Atmega8 über den UART eine Kommunikation mit dem PC herzustellen.
Das hat gestern Abend auch noch funktioniert, bis ich ein etwas abgeändertes Programm übertragen wollte. Da wollte mein Programmer (AVR ISP mk 2) aber nicht mehr in den Programming Mode springen. Daraufhin habe ich mir im AVR Studio nochmal die Fuses angeschaut und das CKOPT-Fuse war nicht mehr gesetzt (hab ich aber vorher gesetzt gehabt). Im Datenblatt des Atmega steht, dass es bei einem 16Mhz Quarz aber gesetzt werden muss. Wie wichtig ist es, das Fuse zu setzten und wie bekomm ich meinen Atmega wieder zum laufen? Ich kann die Fuses nicht mehr umprogrammieren weil ich immer den Fehler bekomme, dass die ISP-Frequenz kleiner als ein Viertel der Boardfrequenz sein muss. Hab sie aber schon so niedrig wie möglich gestellt.
Gut, zwischenzeitlich hat sich mein Problem auf wundersame Weise gelöst. Auf einmal konnte ich die Fuses doch setzten, obwohl ich überhaupt nichts verändert habe. An was kann das liegen dass es manchmal funktioniert und manchmal wieder nicht?
Ich hab die Schaltung auf dem Steckbrett aufgebaut und mich an die Vorlage im Wiki gehalten (AVR Einstieg). Kann es sein, dass die Beine der zum Quarz gehörenden Kondensatoren evtl zu lang sind? Das eine Bein konnte ich kürzen, das andere ist aber immmer noch ca 1,5 cm lang.
Bitte um Vorschläge weil mich mein µC gerade ganz schön verwirrt.
EDIT:
Gut, jetzt ist das Problem wieder da. Hab absolut nichts verändert. Bei den Fuses ist das CKOPT und BODEN nicht gesetzt, außerdem hat sich die Startup-Time verändert.
Die anderen Fuses sind wie sie waren, allerdings hab ich die auch davor nicht verändert.