Hallo Com, ich habe ein Problem. Vorweg genommen- ich bin absoluter Mikrokontroller-Neuling, also nicht böse sein wenn das jetzt ne dumme Frage ist... Also ich möchte einen ATmega8535 mit externem Takt betreiben, dazu habe ich ein 4MHz Quarzoszillator. Also habe ich mit meinem AVRISP MKII über das AVR Studio das Fuse-Bit SUT_CKSEL auf 'Ext.Crystal/Resonator High Freq.;start up time 16k CK +64 ms' gestellt. Das hat nun Folgende Effekte: 1. Ich kann nicht mehr auf den Controller zugreifen, und 2. das Programm läuft nur wenn ich den Ozillatorausgang nicht an XTAL1 anschliesse (das wundert mich am Meisten, ohne Takt dürfte er doch nichts machen...) Ich habe im Wiki gelesen das man jedes falsch gesetzte Fusebit, was mit dem Takt zu tun hat, rücksetzen kann in dem man eine Frequenz an XTAL1 anlegt. Das müsste ja mit dem Quarzozillator zu machen sein, oder? Ich konnnte allerdings keine Erfolge verbuchen. Wer kann mir die Effekte erklären, und wie mache ich meinen Mikrocontroller wieder zugänglich? Zusatzinfos: Die Schaltung ist aus dem AVR-Tut auf einem Steckbrett Aufgebaut (http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment) Der Quarzozillator ist dieser hier: http://www.reichelt.de/?;ACTION=7;LA=28;OPEN=0;INDEX=0;FILENAME=B400%252FOSZI_4000000.pdf;SID=22AlgZgdS4ARYAAGJ@NtIa33a7e284b90d637c8d4e5d0e983f9ef Schonmal danke für eure Antworten. Gruß, Anton
Mit deinem Quarzoszillator musst du external clock einstellen, da der schon ein Rechtecksignal liefert und kein reiner Quarz ist. Zugang kriegste mit deiner Einstellung am ehesten mit einem Quarz/Resonator in Richtung 8MHz, dafür hast du ihn nämlich eingestellt :-) Vielleicht funktioniert auch ein höherer externer Takt, musst du im Zweifelsfall probieren. :-)
Vermutung: external crystal setzt ja den Oszillator voll in Betrieb. Der offene Anschluss nimmt irgendwelche Impulse aus Nachbaranschlüssen auf und schwingt wild. Im Programmierbetrieb sind die Nachbaranschlüsse abgeschaltet (Reset ist ja low) damit geht der Oszillator nicht mehr und auch das Programmieren nicht. Wenn die fuses so sind wie genannt, müsste man programmieren können, indem man den Fremd-Oszillator an X1 ( oder X2?) anlegt, denn mit external crystal ist der Oszillator vorhanden und wenn man an seinen Eingang Fremdtakt anlegt, kommt dieser zum Kontrollerinnern durch. Bei 4 MHZ Oszillatorfrequenz ist u.U. die notwendige ISP-Frequenz schon verpasst, da meist der prescaler mod8 die 4MHz schon auf 500 kHz teilt und damit die ISP-Frequenz 125kHz gerade an der Grenze liegt. Sie muss tiefer als diese grenze eingestellt sein.
Danke für eure schnellen Antworten. Ich hab mal versucht einen 12MHz Quarz mit 2 22pF Kondenatoren (hatte ich grade da) dran zu hängen, auch hier hat sich nichts getan. Ärgerlicherweise hab ich mir grade mein 2. Mikrocontroller zerfused. -.- Ich versteh nicht warum... ich habe eingestellt: Ext. Clock; Start-up time 6CK + 64ms. Nach allem was ich gelesen habe ist das doch die richtige einstellung (sonst hab ich auch nichts verändert). Der Quarzozillator ist an Xtal 1 angeschlossen. Ich habe schon versucht mit allen möglichen ISP-Tackteinstellungen auf den Controller zuzugreifen... Ich weis nicht mehr weiter... Wo könnte denn der fehler liegen?
Hab ich ja auch dran, einen 4,000MHz Ozi mit 4 Pins, und pin 8 habe ich mit XTAL1 verbunden, pin 7 mit GND und pin 14 mit VCC... so wie im oben Verlinkten Schaltplan.
Problem gelöst, es lag nicht am Fusebit sondern am Taktgeber. (mit Oszilloskop gemessen, liefert keine Rechteckspannung) Ich habe einen von Arbeit probiert- und es geht alles. Noch mal danke an alle die sich die Mühe gemacht haben mir zu Antworten. Gruß, Anton
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.