PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ATMEGA32 läuft nicht mehr.



Battatan
05.08.2007, 00:19
Hi Leudz!

Bin totaler Anfänger auf dem Gebiet der MC´s, hab mir ein kleines AVR Board
gebastelt und ein Programm zum testen der I/O geschrieben.
Natürlich wollte ich noch das Ext. Quarz (16MHz) in Betrieb nehmen und spiele
in den Fusebits Einstellungen rum. Falsche Clock-Einstellung ausgewählt und Bascom kann den Controller nicht mehr Lesen (READLB entry not found).
Was kann man da machen? (ATMEGA 32)

homedom
05.08.2007, 00:25
Ich kann dir dazu nich viel sagen, aber ein kurzer Blick in Google hat mir diesen Link ausgespuckt:
https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=17956
Vlt. hilft dir das ja weiter.

gruß, homedom

Christopher1
05.08.2007, 00:50
Welche Clock Einstellung hast du denn beim rumspielen eingestellt ?
Wahrscheinlich brauchst du eine externe Taktquelle (NE555 geht für sowas glaub ich)

JX
05.08.2007, 00:52
gehn wir mal nicht vom worst case aus , dann ist es am warscheinlichsten,
dass du statt auf Quarz ( 2 Beinchen) auf Quarzoszillator ( 4 Beinchen) gestellt hast.

In diesem Fall musst du nen Takt an xtal 1 anschließen:

z.B. der gute alte NE 555 oder einfach nen 2. AVR einen Pin immer toggeln (an und ausschalten) und diesen Takt dann an xtal 1 hängen

dann sollte der AVR wieder erkannt werden und du kannst die Fuses richtig einstellen.

Ansonsten wirds schwierig - gibt ja einige Fusebits :-k

Battatan
05.08.2007, 01:19
Leider weis ich nicht mehr was ich am Takt eingestellt hab kann aber gut möglich sein, dass ich nen Oszi gesetzt hab.

Den quarz hab ich nach dieser Schaltung angeschlossen

https://www.roboternetz.de/wissen/images/3/30/Avrtutorial_grundschaltung_mitquarz.gif

Danke nochmal für die schnellen antworten. hätt ich nicht gedacht vor allem um diese zeit.

Christopher1
05.08.2007, 02:03
Naja es ist vermutlich egal wie du den Quarz angeschlossen hast weil er dir eh nicht weiterhilft :-P
Du musst wie gesagt einen Takt erzeugen (mit einem NE555)

Rofo88
05.08.2007, 07:15
Oder halt mit nem Quarzoszillator. Da brauchste nur 5V ranlegen und schon haste nen Takt am ausgang. Die Dinger kosten auch nicht die welt.

SIGINT
05.08.2007, 09:58
Oder man nimmt einfach AVReAL... der kann auch einen Takt per Software erzeugen (Adapter: FBPRG).
http://www.ln.com.ua/~real/avreal/history_e.html

Battatan
05.08.2007, 16:08
Könnte man nicht ein Taktsignal über ne serielle schnittstelle am Pc senden?
Wie und mit was müsste ich das Programmieren?

Battatan
05.08.2007, 16:18
Könnte ich z.B. das Clock-Signal der PS2 Schnitstelle verwenden?

/----------\
/ 2 \
/ 4 5 \
| |
| 1 3 | 1: CLK
| | 2: DATA
\ __ / 3: RESET
\ | | / 4: GND
\-----------/ 5: +5 V

Lunarman
05.08.2007, 16:43
Vieeeeel zu kompliziert!!! Du nimmst einfach das IC NE555, das ist ein... äh... Taktgenerator, hängst nen Widerstand dran und du hast ne Frequenz, stark vereinfacht. Die musst du dann an xtal 1 anschließen und dann hast dus. Dann fusest du das wieder richtig und kannst den ne555 wieder abnehmen. Fertig. Serielle Schnittstelle oder PS/2 ist wie gesagt zu kompliziert.

Battatan
05.08.2007, 16:51
Alles klar, dann muss ich wohl morgen los einkaufen.

Battatan
05.08.2007, 17:05
Also die Idee mit der Schnittstelle war wohl die einfachste die es gibt. Einfach den Clock-Pin von der Ps2 direkt an XTAL1 angeschlossen und es funzt.(Sonntag gerettet).
Trotzdem dickes Danke an alle!!

mefiX
07.09.2007, 00:47
Hallo,

ich habe gerade selbiges Problem,
ich habe die Fusebits wie folgt gesetzt
CKOPT 1
CKSEL0 1
CKSEL1 1
CKSEL2 1
CKSEL3 1
Also entsprechend die Haken in PonyProg gesetzt.
Wenn ich das Datasheet richtig verstanden habe, dann erwartet der atmega32 dabei ein externes Quartz mit 3-8MHz (habe ein 4 und 8MHz Quartz ausprobiert) mit 12-22pF Kondensatoren (habe 2 x 22pF).
Leider klappt es nicht, nach Setzen der Bits hat sich der Chip verabschiedet.
jetzt habe ich auch die PS/2 Methode ausprobiert, leider auch erfolglos.
Kann mir jemand sagen was ich falsch mache?
Muss bei der PS/2-Clock-Beschaltung auf XTAL1 irgendetwas beachtet werden?

VLG,
mefiX

BASTIUniversal
07.09.2007, 13:19
Hi!
Der Thread steht jetzt im Richtigen Forum.

MfG
Basti

mefiX
07.09.2007, 13:47
Oh Nein!

Ich lese grade

Bei PonyProg wird eine 1 aus dem Datenblatt durch ein nicht gesetztes Häckchen symbolisiert.

das habe ich natürlich invers ](*,)
Also stehen bei mir CKOPT, CKSEL0..3 auf 0
Im Datenblatt steht dafür "External Clock"
Wie kann ich den wieder reanimieren?
Ich habe ein NE555 und ein 4MHz Quarzoszi da.

Christopher1
07.09.2007, 14:08
http://www.klaus-leidinger.de/mp/Mikrocontroller/meinetools.html#Preserver
Unter "Rettung bei versehentlich falsch gebrannten Fuses"

mefiX
07.09.2007, 17:10
Ich glaube der ist hin, tut sich absolut nichts mehr :-s
habe die schaltung nachgebaut und den ouput des Taktgenerators an XTAL1 oder XTAL2 gehalten, tut sich absolut nichts.
was ist denn im datasheet mit "external clock" gemeint?
kann das alles sein?

roboterheld
07.09.2007, 18:30
....jetzt habe ich auch die PS/2 Methode ausprobiert, leider auch erfolglos. ....

wahrscheinlich dein pc jetzt auch hinüber. diese ps/2 methode ist die ungeeigneste die es gibt für euch halbbastler.

kauft euch ein Quarzoszillator und legt ihn in die schublade oder geiz ist geil.

Hubert.G
07.09.2007, 19:28
Mit einem 555 einen Takt machen und auf XTAL1 einspielen, oder einen Quarzoszillator nehmen. Das ist mit external clock gemeint.

Lunarman
07.09.2007, 20:57
*räusper*
sag mal, roboterheld? Was darf ich bitte vom Begriff *halbbastler" halten?

mefiX
07.09.2007, 23:29
Hi!

Ich habe es ja mit einem Quarz-Oszi ausporbiert, hatte mir heute morgen extra noch nen NE555 + 4MHz Quarz-Oszi gekauft.
Dann habe ich die Schaltung hier
http://www.klaus-leidinger.de/mp/Mikrocontroller/meinetools.html#Preserver
nachgebaut, leider erfolglos.
Mit dem NE555 dann noch was zu machen habe ich als überflüssig angesehen, weil ich dachte dass ein Quarz-Oszi schon einen zuverlässigen Clock liefern wird.
Habe mir dann nen Atmega8 - fürs kleine Portmonaie - geholt, da hat das "fusen" jetzt geklappt (wenn man weiss, dass sich PonyProg bei den Flags "invers" verhält).
Erst dachte ich, der kann kein I2C, hat er aber wohl doch, also langt der 8er sogar für meinen Zweck.

Aber cool wär es trotzdem, wenn ich den 32er reanimieren könnte.

LG,
mefiX

Hubert.G
08.09.2007, 09:27
Du könntest auch noch den externen RC Oszillator probieren.

mefiX
08.09.2007, 09:51
hmkay ... wie sieht der denn aus?
Quarz + RC-Glied?

Hubert.G
08.09.2007, 10:17
RC Oszillator siehe Datenblatt Seite 26

Battatan
10.09.2007, 16:26
moin leudz!

Ich hab mein problem gelöst als ich den clock Pin der PS/2 schnittstelle direkt auf den XTAL2 Pin angeschlossen habe. Da ich bereits ein Programm auf den ATMEga32 laufen hatte konnte ich beobachten das der clock asynchron zum zum eingestellten Timer auf dem Controller läuft. Mit Bascom ausgelsen, Fusebits neu gesetzt und alles läuft (soviel zu halbbastler) :-$