Hallo,
ich habe versucht, die Bits für ext. Quartz, 8 Mhz usw. einzustellen.
Ich hab folgende Bits gesetzt: cksel3..0, sut1..0 und ckopt.
Laut Datenblatt müsste das passen, aber jetzt kann ich an meinem
ATMega16 weder etwas lesen noch schreiben. Die Verbindung passt, aber
Datenübertragung ist seit dem Bits setzen nicht mehr. Es kommt immer
die Meldung: falsches oder fehlendes Device. Wenn ich die Fusebits
auslesen will bringt er auch die Fehlerm. und wenn ich dann ignorieren
klicke, zeigt er, daß alle mögliche Bits gesetzt sind.
Was habe ich falsch gemacht???
Danke, Sanlo
Hi!
Ich hoffe du hast bedacht, dass wenn im Datenblatt 1111 steht die Fuses
unprogrammed (logisch 0 sind). Je nachdem welches Programm du benutzt,
müssen die Bits gesetzt werden oder auch nicht.
Wenn die Bits korrekt gesetzt sind kann es nur sein, dass dein Quarz
nicht anschwingt. Einfach mal mit den parallelgeschalteten Kapazitäten
spielen. Oft hilft schon einfach mal auf einen der Kondensatoren zu
greifen. Die Kapazitätsänderung durch die Hand reicht manchmal aus, das
Ding zum schwingen zu bringen. Bei mir kam es öfters vor, dass mit
meinem 22pF Standardkapazitäten der Quarz einfach nicht schwingen
wollte. 27 oder 30 pF haben dann geholfen.
ciao
Fasti
Einfach mit nem Quarzoszillator speisen. Hat bei mir immer geholfen.
Oder auch Funktionsgenerator wenn gerad zur hand. Freq ist rel
unkritisch weil man ja idr nur die Fuse Bits korrigieren moechte...
Hallo,
ext. Quarz sind CKSEL3..1 auf 1, also unprogrammiert, also OHNE Haken
in Ponyprog...
Bei CKSEL3...0 mit Haken im Pony sind sie programmiert, also 0 also
externer Taktgenerator!
Such Dir einen Quarzoscillator mit 1-8MHz und hänge ihn ran. Dann
kannst Du die Fuses wieder korrigieren.
Es steht in Pony als Anmerkung (leider schlecht lesbar weil geghostet)
im Programmierfenster, wie das mit den Haken gemeint ist.
PS: mein Mega16 schwingt geht hier zuverlässig mit 16MHz (irgendwo
ausgelötet) bei 2x22p auf einem Breadboard ohne CKOPT zu setzen.
Genügend 100n Abblock-Cs an Reset, AVcc, Vcc und auf dem Breadboard
verteilt, helfen da oft weiter.
Gruß aus Berlin
Michael
aber das mit den Haken als Einser passt schon.
Der Auslieferungszustand ist CLKSEL3..0 = 0001 und bei CLKSEL0 war ein
Haken drin.
Hab die Kontakte von nem zweiten Quartz einfach mal draufgedrückt, aber
da geht trotzdem nix los. Werd den Quartz wohl auslöten und einen
anderen einbauen müssen und dann probier ich mal noch größere C als die
22pF .
->Sanlo
Hallo,
Du hast die Fuses auch wirklich mit Pony eingelesen gehabt?
Ich habe in den letzten 2 Stunden bei einem Mega16 mehrmals die Fuses
geändert, weil ich ein Timing-Problem gesucht habe, Sowohl auf intern
als auch auf extern.
Er läuft jetzt wieder mit externem Quarz und die Fuses sind auf 111 und
bei Pony sind die Haken jetzt NICHT gesetzt.
Gruß aus Berlin
Michael
okay, wenn das so ist hab ich auf 0000 also ext clock gefused.
Funktioniert da ein Quartz nicht???
Es hängt doch ein 8 Mhz Quartz dran.
oder ist ext clock was anderes?
Nein da funktioniert kein Quarz, weil
der interne Schwingkreis, der den Quarz normalerweise
zum schwingen bringt, abgeschaltet wurde (so ein Quarz
schwingt nicht einfach von alleine, der bruacht eine
Erregerschaltung).
Also: Quarz wegnehmen. Irgendeinen Takt an XTAL1
(oder wars XTAL2) dranklemmen. Dann muesste der Mega
wieder tun und du kannst die Fuses korrigieren.
Woher kriegst du so einen Takt?
Wenn du noch einen 2. ten Mega hast, dann kannst du
den so programmieren, dass er einen Output-Pin
toggelt. Das kannst du dann als Taktsignal nehmen.
> oder ist ext clock was anderes?
haettest du den ersten link, den ich dir gegeben hab, mal gewissenhaft
angeschaut, dann wuesstest du das. sorry fuer den ruppigen ton, aber
wie man an dem link auch erkennt, kommt die frage ca. alle 2 wochen...
gruss, alex.