Hallo. Ich habe ein ATMega128 Experimentierboard (gekauft) und es funktionierte immer perfekt mit dem usbasp-programmer von Ulrich Radig (http://www.ulrichradig.de/home/index.php/avr/usb-avr-prog). Doch nachdem ich die Fusebits umstellen wollte, kann ich den Chip nicht mehr ansprechen. Es kommt immer diese Meldung: ======================================================================== === avrdude.exe: WARNING: -E option not supported by this programmer type avrdude.exe: error: programm 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. ======================================================================== === Auch wenn ich JP2 öffne, kommt das gleiche bei raus. Ich weiß nicht was passiert ist... (Die Leitungen funktionieren einwandfrei!) Kennt jemand evtl. das Problem? Kann man mein Board noch retten oder ist der AVR kaputt? mfg Florian
Du wirst auf ext. Takt umgestellt haben. Einen Takt auf XTAL1 an legen, Frequenz so hoch wie möglich. Die Programmierfrequenz auf weniger als ein viertel der Taktfrequenz stellen, dann sollte es wieder funktionieren.
Danke für die Antwort. Es liegt bereits ein 16 MHz quarz an XTAL1 und XTAL2. Daran kann es nicht liegen, oder? Hier mal die pdf-datei vom board: http://www.steitec.net/media/products/0015687001249625934.pdf mfg Florian
> Es liegt bereits ein 16 MHz quarz an XTAL1 und XTAL2.
Daran kann es nicht liegen, oder?
Ein Quarz ist KEIN externer Takt.
Also soll ich z.B. mit einem anderen Mikrocontroller einen Takt erzeugen und den Pin an XTAL1 packen? mfg Flo
ps: hier (http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment#externer_Takt) steht was anderes ^^
Da steht nichts anderes, du liest nur etwas anderes. Du hast deine Fuses so eingestellt als wenn du einen Quarzoszillator angeschalten hättest und nicht einen Quarz. Das sind zwei verschiedene Taktmöglichkeiten die du am Kontroller mit den Fuses einstellen kannst.
Hmm ok. Aber wie es der Zufall will, habe ich keinen passenden Quarzoszillator (nur einen mit 35MHz). Also wiki sagt, dass ein Quarzoszillator ein Rechteckspannung erzeugt. Also würde meine "notlösung" mit dem 2. Mikrocontroller auch funktionieren... hoffe ich Der Andere ATMega644 läuft mit einer Frequenz von 14,318 MHz Also würde dieser in einer Sekunde 14.318.000 Befehle ausführen. Der Code sähe so aus: int main() { DDRC = 0xFF; while(1) { PORTC = 0xFF; PORTC = 0x00; } } Er würde also eine Frequenz von 14,318 MHz/2 = 7,159 MHz erzeugen. Stimmt die Rechnung? Würde das überhaupt funktionieren? gruß flo
Hi
>Er würde also eine Frequenz von 14,318 MHz/2 = 7,159 MHz erzeugen.
Nein. Da ist zumindest ein ASM-Befehl 'rjmp' mit 2 Takten drin. Und das
Beschreiben des Ports kann auch durchaus länger dauern.
MfG Spess
Hallo! Also ich muss sagen, einfach klasse!!! Ich danke dir!! Mein Board ist gerettet! Die Methode mit dem Mikrocontroller funktionierte einwandfrei! Direkt beim 1. Versuch :D mfg Florian
>Da ist zumindest ein ASM-Befehl 'rjmp' mit 2 Takten drin. Und das Beschreiben des
Ports kann auch durchaus länger dauern.
Die Geschwindigkeit reichte trotzdem aus ^^
mfg Flo
Hi
>Die Geschwindigkeit reichte trotzdem aus ^^
Ich habe ja auch nicht das Gegenteil behauptet.
MfG Spess
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.