Forum: Mikrocontroller und Digitale Elektronik Problem mit Atmega32 & Quarz


von Michael S. (redrabbit)


Lesenswert?

Hallo :)
Ich bin noch relativ unerfahren mit µC.
Schon seit ein paar Stunden versuche ich mit Hilfe der Tutorials hier im 
Forum und Google meinen Atmega32 mit einem 12MHz Quarz zu betreiben.
Dazu hab ich mir mit nem 
Fusecalculator(http://www.engbedded.com/fusecalc) die passenden Werte 
für die hight- und lowbits berechnet.
Ich hab "Ext. Crystal/Resonator Hight Freq.; Start-up time: 16 CK + 64 
ms" als Taktquelle ausgewählt und den Jtag-port deaktiviert(die Pins 
brauch ich später noch).
Anschließend habe ich den Quarz an XTAL1 und XTAL2 angeschlossen. 
Angeregt hab ich ihn mit 2 22pF Keramikkondensatoren.
Zum Testen habe ich eine LED mit Vorwiderstand mit 1Hz blinken lassen.

Mein Problem ist, dass die LED zwar blinkt, aber nur, wenn mein 
SPI-Flasher mit Laptop und µC verbunden ist.
Wenn ich den Quarz rauszieh, geht wie erwartet, nix mehr.
Woran könnte es liegen, dass der Controller nur mit angeschlossenem 
SPI-Flasher läuft?

mfg

von Carsten H. (blaubaer77)


Lesenswert?

Hast Du vielleicht vergessen, die Reset-Leitung zu beschalten?
So funktioniert die Schaltung nur, wenn der Programmer die Leitung auf 
high zieht..

gruß blaubaer77

von H.Joachim S. (crazyhorse)


Lesenswert?

Oder Stromversorgung kommt nur vom ISP?

von Michael G. (mg800)


Lesenswert?

Ich denke Casten hat recht. Du hast garantiert vergessen deine 
Resetleitung zu beschalten und da sie LOW Active ist ist der ATMega 32 
im dauerhaften reset Zustand bis der Flasher die Leitung auf HIGH zieht. 
Häng deine Resetleitung einfach über einen 10 kOhm wiederstand an die 
Versorgungsspannung und alles sollte fuktionieren.

von Michael S. (redrabbit)


Lesenswert?

Das Problem mit der RESET-Leitung hatte ich vorher schon, als ich mit 
dem internen RC Oszilator gearbeitet habe. Ich hab seit dem RESET nem 
10K Pullup und nen 47nF Folienkondensator gegen GND.
Die +5V vom SPI habe ich garnicht verbunden. Nur GND
Eigentlich sollte die Verdrahtung ok sein. Weil an der hab ich seit dem 
Betrieb mit internem Oszi nix geändert (Außer den Quarz hinzugefügt).
Könntet Ihr vllt. mal schauen, ob die Fuses wirklich ok sind?
"low:0xff; hight:0xd9"

mfg

von Carsten H. (blaubaer77)


Lesenswert?

Versuch doch mal, ob es was bringt, CKOPT mit zu programmieren.
Also Fuses: "low:0xff; hight:0xc9"

von Michael S. (redrabbit)


Lesenswert?

Komisch...
Erst hab ich gedacht, dass die neuen Fuse-Werte nix gebracht haben.
Dann hab ich jedoch den SPI-Flasher vom Steckboard getrennt und nicht 
nur den USB gezogen.
Und siehe da, die LED blink! :D
Kann mir jemand von Euch erklären, wieso es nur mit abgestecktem 
SPI-Flasher geht?
Mit dem internen Ozi gings auch mit :)

mfg und vielen Dank für eure Hilfe! :D

von Carsten H. (blaubaer77)


Lesenswert?

Ich denke mal, der Flasher kriegt seine Spannung vom USB. Wenn die durch 
Abziehen des Steckers weg ist, zieht warscheinlich der stromlose 
Programmer die Reset-Leitung auf low.
Aber das müßte dann eigentlich mit dem internen RC-Oszillator genauso 
sein...

von Michael S. (redrabbit)


Lesenswert?

Das wundert mich nähmlich auch...
Aber vllt. hab ich den auch nie vom USB abgezogen ;)

Auch wenns jetzt geringfügig vom Thread abweicht, aber hat jemand von 
Euch schonmal Erfahrung mit diesem selbstgebastelten Pegelwandler (5V 
<--> 3,3V) gemacht?: 
http://www.rocketnumbernine.com/2009/04/10/5v-33v-bidirectional-level-converter

mfg
Michi

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
Noch kein Account? Hier anmelden.