Forum: Mikrocontroller und Digitale Elektronik Fuses programmieren, so richtig?


von T. S. (elektrowiesel)


Lesenswert?

Hi,

Ich möchte einen ATMega8-16PU so programmieren, dass er einen 16MHz
externen Quarz(HC49U-S Ausführung) benutzt.

Auf der Seite von der ich das Projekt habe, was ich versuche zu 
programmieren steht Low Fuse = 0xFF; High Fuse = 0xC9.

Kann man die so programmieren, wenn an XTAL1 und XTAL2 der Quarz 
angeschlossen ist?

Ich habe noch grundsätzliche Verständniss Probleme mit den Fuses.
Wofür werden sie genau gebraucht?
Wo werden sie gespeichert?
Wie werden sie vom µC verwendet(beim Start)?

Danke!

: Verschoben durch Moderator
von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Tim S. schrieb:

> Kann man die so programmieren, wenn an XTAL1 und XTAL2 der Quarz
> angeschlossen ist?

Ja.  Wichtig ist, dass CKOPT gesetzt ist (Bit 4 der High Fuse = 0),
das ist standardmäßig gelöscht.  Für einen 16-MHz-Quarz wird es
benötigt.

Ansonsten sind die Startup-Einstellungen shr vorsichtig, d. h. er
braucht lange, bis er wirklich dem Takt übern Weg traut und die CPU
startet.

> Ich habe noch grundsätzliche Verständniss Probleme mit den Fuses.
> Wofür werden sie genau gebraucht?

Um bestimmte Features einzustellen, die bereits beim Powerup eingelesen
werden sollen und die sich nicht vom Programm aus ändern lassen dürfen.

> Wo werden sie gespeichert?

In speziellen Flash-Speicherzellen.

> Wie werden sie vom µC verwendet(beim Start)?

Sie werden eingelesen in interne Speicherzellen (Flip-Flops), von
denen aus sie dann in der Logik bestimmte Signalwege schalten.

von guest (Gast)


Lesenswert?


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.