Hi, ich habe ein kleines Problem mit meiner Tutorial-Schaltung: Ich habe alles wie beschrieben aufgebaut, das Programmieren des Atmega8 mit der ersten Beispielschaltung hat auch einwandfrei funktioniert, allerdings habe ich die Fuses erstmal gelassen wie sie sind. Wenn ich jetzt den Quarz rausnehme, leuchten die LEDs kurz mal nach dem Reset auf. Danach passiert überhaupt nichts mehr. Wenn ich den Quarz einsetze, blinken sie sehr schnell. (Wobei ich mir auch nicht erklären kann warum der Quarz überhaupt einen Einfluss hat). Die Spannungsversorgung liegt überall bei ca. 4,6V, sollte also kein Problem sein. Kann mir da jemand helfen?
Dir is die Funktion eines Quarzes bekannt ? Nimmst du ihn aus der Schaltung, funktioniert der Prozessor nicht mehr, bzw taktet nicht mehr. Du reist ihm bildlich gesprochen das Herz heraus..........
Ja, das ist mir durchaus bewusst ;) - wie gesagt hatte ich aber die Fuses noch nicht auf einen externen Clock eingestellt, d.h. der Atmega sollte seinen internen 1Mhz Clock nehmen, tat er aber anscheinend nicht. Ich habe eben die Fuses wie im Tut angegeben verändert, programmieren kann ich ihn nach wie vor, nur tut er nix mehr (Zumindest Leuchten die LEDs nicht). Leider habe ich keinen TTL-Prüfstift da um zu sehen ob der Quarz richtig arbeitet. Hat da jemand nen Trick? Gruß Lukas
Hi, du hast die Fusspunktkondensatoren dran? Ein 100nF Kondensator hast du so dicht wie moeglich an VCC und GND zum µC dran? Ein Pullup hast du hoffentlich auch am Reset Pin. Du kannst eine Gleichspannung von ca. 2,5V messen am Quarz am zweiten Quarz sind es ca 0.3V weniger. Gruß, Dirk
Hi, danke schonmal für die schnellen Antworten. Was meinst du mit Fusspunktkondensatoren? Der 100nF Kondensator ist da, Pullup am Reset selbstverständlich auch. Am Quarzoszillator kann ich 4,5V= messen. Welchen zweiten Quarz meinst du? Im übrigen kann das alles nicht so verkehrt sein, da ich den Chip ja programmieren kann. D.h. der Quarz MÜSSTE ja eigentlich gehen, oder? Wenn ja ist der Fehler wohl eher an meiner LED-Schaltung zu suchen, nur weiß ich da echt nicht wo, hab die LEDs mit nem 1kR auf Vcc, die Kathode zum Port... Gruß Lukas
Hallo er meint mit Fusspunktkondensatoren,das an jedem Bein des Quarzes ein ca 22 pf Kondensator nach masse dran muss. gruss Andy
Lies doch einfach mal die Fuses aus (sollte nichts verändern) und sag uns mal, wie die Häckchen bei CKSEL 0 bis 3 sind..
Also, für die Fuses siehe den Dateianhang, habe mich an das Tutorial gehalten. Wgn. den Kondensatoren: Ich habe nur noch 47pF Kerkos, mit denen funzt aber gar nix, ich kann ihn nicht mal mehr mit Yaap erkennen. Es sei denn ich habe sie falsch beschaltet. Gruß Lukas
Okay, ich habe den Atmega8 jetzt wieder auf die ursprüngliche Selbsttaktung zurückgestellt damit ich mir keinen Ärger mehr mit dem Clock machen muss. Nach wie vor habe ich aber das Problem das die LEDs nach einem Reset kurz (vielleicht für eine halbe Sekunde) leuchten und dann wieder ausgehen und aus bleiben. Kann es sein das der Controller nicht genügend Spannung abbekommt? Aber ca. 4,5 V sollten doch eigentlich reichen, oder? Ich bin hier echt am verzweifeln... Gruß Lukas
Hi, hast du nun einen Quarz(2 Beinchen) o. einen Quarzoszillator (3Beinchen benoetigt VCC und GND) am Mega8? Bitte pack mal deinen Quellcode in den Anhang, vielleicht ist es ein Softwarefehler. Gruß, Dirk
Oha, hab mich vorhin wohl unklar ausgedrückt: Habe einen QuarzOSZI mit 4MHz. Allerdings ist der im Augenblick nicht angeschlossen. Ich versuche es erstmal mit dem internen Takt. Das Programm habe ich 1:1 aus dem Tutorial rauskopiert, selbstverständlich auch die "m8def.inc" mit übernommen. Hier aber trotzdem nochmal der Code: .include "m8def.inc" ;bzw. 2333def.inc ldi r16, 0xFF ;0xFF ins Arbeitsregister r16 laden out DDRB, r16 ;Inhalt von r16 ins IO-Register DDRB ldi r16, 0b11111100 ;0b11111100 in r16 laden out PORTB, r16 ;r16 ins IO-Register PORTB ausgeben ende: rjmp ende ;Sprung zur Marke "ende" -> Endlos
Hi, dann muss ich mal weiter fragen. Wie sind die Led's angeschlossen an deinem µC? VCC->R->LED->µCPortpin o. µCPortpin->R->LED->GND ? Also wenn deine LED mit Low Pegel eingeschaltet wird und sich an PB0 oder PB1 befindet sollte die LED angehen und anbleiben bis zu einem Reset. Wenn du ein Voltmeter hast mess doch mal bitte die Spannung am Reset Pin. Gruß, Dirk
Ok, danke Dirk!! (Ich weiss ehrlich gesagt noch nicht so genau wofür :D, aber es klappt jetzt!) Ich habe und hatte eine Pull-Up Schaltung an den LEDs, also Vcc->R->LED->PortB0-3 Ich habe jetzt mal die Kondensatoren von dem Quarzoszillator entfernt (die kamen mir vorhin schon ziemlich merkwürdig vor, aber wgn. Quarz != Quarzoszillator waren die Antworten vorhin schon korrekt) Jetzt aber ein paar Fragen: Wenn ich den Ausgang des Oszillators an XTL1 hänge, fangen die LEDs an zu blinken, warum? Wie kann ich Yaap sagen das ich einen externen Clock habe, d.h. wie muss ich die Fuses setzen, ich komm da nicht so ganz klar. Im Datenblatt steht das 0=programmiert heisst, was heisst dann jetzt ein Häkchen in Yaap? Ich habe vorhin Testweise einen Atmega8 mit CLKSEL0..3 mit komplett an allem Häkchen gefused, dieser wird jetzt nicht mehr erkannt. Wie bekomm ich den wieder (sind immerhin 3 EUR...)? JUCHUU es GEHT :D
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.