Forum: Mikrocontroller und Digitale Elektronik ATMega32 Fuse Bits setzten - Problem mit JTAG


von dance_supervisor (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

ich brauche ganz dringend eure Hilfe, denn ich komme nicht mehr weiter!

Ich habe mir einen LED Würfel 8x8x8 gebaut. Diesen möchte ich mit dem 
ATMega32 steuern, was bis jetzt auch recht gut funktioniert. Schaltung 
der Steuerung ist im Anhang.

Um die Pins PC2 - PC5 als IO nutzen zu können wollte ich die JTag 
Schnittstelle disabeln.

Des Weiteren möchte ich wie in der Schaltung zu sehen ist den externen 
Quarz verwenden.

Für beide Dinge muss ich die Fusebits verändern, was aber das Problem 
ergibt. Sobald ich diese verändere, ist mein Controller nicht mehr über 
die ISP Schnittstelle ansprechbar.

Auf dem Schaltplan ist eine Serielle Schnittstelle vermerkt, diese habe 
ich weggelassen, da ich meinen würfel gerne nur über ISP Programmieren 
würde.

Jetzt zu den Fragen:

1. Weis jemand eventuell woran das liegen kann?

2. Wenn ich den JTAG Port disable müsste ISP doch noch funktionieren, 
oder?

3. Der externe Clock kann eigentlich nicht daran schuld sein oder? 
(evlt. kaputer oszilator?).


Schon vorne weg, ich bin für jeden Tipp dankbar!

von Thomas E. (thomase)


Lesenswert?

dance_supervisor schrieb:
> 3. Der externe Clock kann eigentlich nicht daran schuld sein oder?
Doch. Tonne auf, Atmega rein, Tonne zu.

Bei External Clock wird ein Takt erwartet. Ein externer Quarz wird mit 
External Oszillator eingeschaltet. Bau dir irgendwas, was zappelt. Pin 
toggeln auf einem anderen Controller und häng den da ran. Dann kommst du 
wieder rein.

mfg.

von Hans Peter B. (Gast)


Lesenswert?

Warum sagst du nicht einfach wie du die Zustände der Bits deiner 
Fuse-Bytes verändert hast. dann sollte deine Fragen kein Problem sein.
H.P.

von David G. (david_g80)


Lesenswert?

Ich habe an dem Controller einen Quarz hängen, so wie das im Handbuch 
beschrieben ist... Somit schwingt da dann doch auch was...

Kannst du mir deine Antwort noch genauer erklären.

von holger (Gast)


Lesenswert?

>Ich habe an dem Controller einen Quarz hängen, so wie das im Handbuch
>beschrieben ist... Somit schwingt da dann doch auch was...

Wenn die Fuse auf Crystal Osc. steht schwingt da was.
Wenn du external Clock genommen hast schwingt da nix.
Dann musst du da ein Rechtecksignal reingeben.
Und das macht ein nackter Quarz halt nicht.

von David G. (david_g80)


Lesenswert?

Hans Peter B. schrieb:
> Warum sagst du nicht einfach wie du die Zustände der Bits deiner
> Fuse-Bytes verändert hast. dann sollte deine Fragen kein Problem sein.
> H.P.

Ich habe die Bits wie folgt modifiziert:

LowByte: 0xEF

HighByte: 0xC9

Von den standartangaben weicht somit folgendes ab:

Ext. Crystal High Freq Start Up Time 16K +4ms bit eingestellt.

Enable JTAG bit nicht gesetzt

CKOPT fuse bit nicht gesetzt

von David G. (david_g80)


Lesenswert?

holger schrieb:
>>Ich habe an dem Controller einen Quarz hängen, so wie das im Handbuch
>>beschrieben ist... Somit schwingt da dann doch auch was...
>
> Wenn die Fuse auf Crystal Osc. steht schwingt da was.
> Wenn du external Clock genommen hast schwingt da nix.
> Dann musst du da ein Rechtecksignal reingeben.
> Und das macht ein nackter Quarz halt nicht.

Aber die XTAL Ein- bzw Ausgänge sind doch genau dafür da oder? Sie regen 
den Quarz zum schwingen an und dort wird dann auch das Signal erzeugt, 
welches der Controller braucht.

Kannst du mir eventuell genauer beschreiben wo ein Rechecksignal 
anliegen muss. Und warum genau kann ich den Controller dann nicht mehr 
über ISP Programmieren (Fehler: Starten des Programmiermodus 
fehlgeschlagen).

von holger (Gast)


Lesenswert?

>Aber die XTAL Ein- bzw Ausgänge sind doch genau dafür da oder? Sie regen
>den Quarz zum schwingen an und dort wird dann auch das Signal erzeugt,
>welches der Controller braucht.

Ja, das ist alles richtig. Deine Fuses passen auch auf Quarz.
Wenn der nicht schwingt würde ich mal nach Kurzschlüssen
oder offenen Leitungen suchen. Die Kondensatoren am Quarz
sind auch wirklich im pF und nicht im nF Bereich?

von David G. (david_g80)


Lesenswert?

lfuse: 0b11101111
hfuse: 0b11001001

Nochmal ... weils einafcher zu lesen ist

von David G. (david_g80)


Lesenswert?

holger schrieb:
>>Aber die XTAL Ein- bzw Ausgänge sind doch genau dafür da oder? Sie regen
>>den Quarz zum schwingen an und dort wird dann auch das Signal erzeugt,
>>welches der Controller braucht.
>
> Ja, das ist alles richtig. Deine Fuses passen auch auf Quarz.
> Wenn der nicht schwingt würde ich mal nach Kurzschlüssen
> oder offenen Leitungen suchen. Die Kondensatoren am Quarz
> sind auch wirklich im pF und nicht im nF Bereich?

Jep sind sie. Habe ich extra nochmal nachgesehen (vorlage im Plan).

Mal eine ganz allgemeine Frage:

Wenn ich den JTAG deaktiviere, müsste das Programmieren über ISP doch 
eigentlich noch möglich sein, oder?

von holger (Gast)


Lesenswert?

>Wenn ich den JTAG deaktiviere, müsste das Programmieren über ISP doch
>eigentlich noch möglich sein, oder?

Ja, du hast das ISP laut deinen Fuses nicht deaktiviert.
Tatsache scheint aber zu sein das dein Quarz nicht schwingt.
Also such da noch mal nach Fehlern oder speise einen
Takt an XTAL1(?) ein. Dann müsstest du da auch wieder
per ISP rankommen.

von David G. (david_g80)


Lesenswert?

holger schrieb:
>>Wenn ich den JTAG deaktiviere, müsste das Programmieren über ISP doch
>>eigentlich noch möglich sein, oder?
>
> Ja, du hast das ISP laut deinen Fuses nicht deaktiviert.
> Tatsache scheint aber zu sein das dein Quarz nicht schwingt.
> Also such da noch mal nach Fehlern oder speise einen
> Takt an XTAL1(?) ein. Dann müsstest du da auch wieder
> per ISP rankommen.

Das ist super! Werde ich sofort mal testen ... Wenn ich einen externen 
Signalgenerator anschließe, ist es doch mit folgendem Signal getan oder:

Signal:
0-5V Rechteck ca. 16 MHz

von David G. (david_g80)


Lesenswert?

Sooo ich hab das jetzt mal getestet, und es lag tatsächlich am Quarz ... 
Der war hinüber. Als ich ihn ausgetauscht hatte ging alles ...


Danke für euere Hilfe!!!!!

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.