PIC18F Externer Quarz nötig?

OP #809968
Lesenswert?
• ▲
▼
Hallo PIC Profis,

ich bin ziemlich (gänzlich) unerfahren was die PIC's betrifft, möchte 
dies aber ändern und mir ein kleines Board mit dem PIC18F2321 aufbauen.

Jetzt stellt sich bei mir voarab die Frage ob ein Quarz an OSC1/OSC2 
nötig ist, schließlich verfügt der PIC auch über einen internen RC 
Oscillator, (Internal oscillator block) welcher 31kHz - 8MHz zur 
Verfügung stellt.

So weit so gut dachte ich mir, da kann man sich den Quarz sparen. Beim 
näheren studieren des Datenblattes ist mir dann aufgefallen, dass die 
System Clock Select bits (SCS1:SCS0) per Default auf 00 und somit auf 
Primary oscillator (OSC1/OSC2) gestellt sind.

Verstehe ich das falsch, oder kommt man ohne einen Quarz an OSC1/OSC2 
nicht aus?

Ich hoffe es kann mir jemand bei meinem Problem helfen. Vielen Dank 
schonmal vorab.
Gast #809978
Lesenswert?
• ▲
▼
Die Taktquelle kannst Du über die Configuration-Bits einstellen, die 
beim Brennen gesetzt werden. Dort kannst Du auch den internen Taktgeber 
als Taktquelle einschalten. Du brauchst also keinen externen Quarz.
#809988
Lesenswert?
• ▲
▼
Also, etwas detaillierter:
Mit SCS1:SCS0 wählst Du zur Laufzeit (also in Deinem Programm), ob der 
Takt vom primären Oszillator, von Timer1 oder vom internen Oszillator 
kommt.
Per Default vom primären Oszillator.

Aber: Welches der primäre Oszillator ist, wird mit den Configuration 
Bits (auch Fuses genannt) FOSC3:FOSC0 bestimmt.
Dort kann mit 1000 der interne Oszillator gewählt werden, der per 
Default mit 8MHz läuft.

Mit IRCF2:IRCF0 kann (zur Laufzeit) die Frequenz gewählt werden.

Also: Beim Flashen des PIC muss der primäre Oszillator gewählt werden 
(Configuration bits FOSC3:FOSC0). Dies kann im Sourcecode eingebettet 
oder im Programmer gewählt werden.

Anschliessend wird im Programm (Initialisierung) das Register OSCCON 
gesetzt mit den gewünschten Werten für SCS1:SCS0 sowie IRCF2:IRCF0.

Alles klar? Wichtig bei Rückfragen: wie programmierst Du (Assembler, C, 
...)?

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.