Quarz schwingt nicht in der richtigen Frequenz (an PIC)

OP #4917612
Lesenswert?

Hallo,

ich möchte einen Quarz ( ECS-240-20-5PXDU-TR )als Taktversorung für 
einen PIC32MZ(EF) nutzen. Der Quarz soll auf Grund des 
Temperaturbereichs verwendet werden.
Als Schaltung verwende ich einen Pierce-Oszillator mit 20 und 40pF.
Es handelt sich um einen 24MHz Grundton-Quarz, wenn ich das Datenblatt 
richtig gelesen habe. Leider schwingt er nur mit 2MHz (siehe Bild). 
Gemessen habe ich direkt am Quarz, aber auch ohne Tastkopf am Quarz ist 
die Frequenz zu niedrig. (Gemessen mit Timer-IR und Pin-toggle)
Der PIC funktioniert mit dem internen Oszillator.

Habe ich etwas übersehen?
Wie kann so eine extreme Abweichung zustandekommen?
Sind die Kondensatoren falsch gewählt? (Wobei mir hier die extreme 
Abweichung nicht klar wird)

Danke schon mal für eure Hilfe,
Grüße Thomas
Angehängte Dateien:
Gast #4917654
Lesenswert?

Also so einen Fall hatte ich schon, aber das war ein falsch 
etikettiertes Reel (also ein Bestückungsfehler).

Ich kann mir irgendwie nicht vorstellen, dass man einen Grundtonquarz 
nur mit Kapazitäten von 24MHz auf 2 MHz niederzwingen kann.

Man kann sowas allerdings durchaus per Software schaffen, nachdem man 
Oszillatorpins des PIC auch als Ausgänge konfigurieren kann.

Du bist sicher, dass das passt?
Also die Configbitsettings und der Code?
OP #4917666
Lesenswert?

1
#pragma config FPLLIDIV = DIV_3, FPLLMULT = MUL_50, FPLLODIV = DIV_2
2
#pragma config FPLLRNG = RANGE_13_26_MHZ, FPLLICLK = PLL_POSC, FNOSC = SPLL
3
#pragma config FSOSCEN = OFF, IESO = ON, POSCMOD = EC
4
#pragma config FDMTEN = OFF, DMTCNT = DMT31, FWDTEN = OFF, ICESEL = ICS_PGx2
5
#pragma config OSCIOFNC = ON
6
#pragma config FCKSM = CSECME

Das ist meine Config für den PIC mit 200MHz, damit läuft auch ein 
EF-Starterkit. Mit OSCIOFNC = ON sollten die Pins als Takteingang 
gesetzt sein.
OP #4917689
Lesenswert?

Andi B. schrieb:
> AFAIR wurden da Serien vom MZ verkauft bei denen der
> Oszillator mit externem Quarz nicht zuverlässig funktionierte.

Das ist DER Hinweis gewesen^^ Errata sheet gelesen und das gefunden:

2.   Module:  Oscillator
A crystal oscillator cannot be used as an input to
the Primary Oscillator (OSC1/OSC2 pins).
Work around
Use   an   external   clock   or   the   Internal   FRC
Oscillator.

Warum macht man sowas? =)
Danke euch für die schnellen Antworten.

PS:
Joe F. schrieb:
> Wie kommst du eigentlich auf die 40 & 20pF? Meinem Gefühl nach würde man
> eher so jeweils 15pF nehmen...

Bis jetzt habe ich immer den MiniPIC32 verwendet, jetzt die erste 
Platine fertigen lassen und bin natürlich in die Lastkapazitäten-Falle 
(CL = C1 = C2 <- Facepalm) getappt. Nach ein wenig Einlesen in das 
Problem habe ich dann C26 verdoppelt. (Habe in der Größenordnung auch 
nur 20p da)
#4917749
Lesenswert?

Thomas H. schrieb:
> Errata sheet gelesen und das gefunden

Ist denn deine silicon revision wirklich betroffen?

Ein Konfigurationsfehler ist ja trotzdem noch drin...
Wenn dieser Stromlaufplan hier (S. 22)

http://ww1.microchip.com/downloads/en/DeviceDoc/70005147C.pdf

deinem Starterkit entspricht gibt es 2 Konfigurationsmöglichkeiten.
Y4 bestückt: 24 MHz Oszillator, und kein Quarz.
Y1 bestückt: Quarz.

Guck mal nach, welche Hardwarekonfiguration zu der von dir genannten 
"#pragma" Konfiguration passt.

"POSCMOD = EC" kommt mir wirklich verdächtig vor.
OP #4918256
Lesenswert?

Joe F. schrieb:
> deinem Starterkit entspricht gibt es 2 Konfigurationsmöglichkeiten.
> Y4 bestückt: 24 MHz Oszillator, und kein Quarz.
> Y1 bestückt: Quarz.
>
> Guck mal nach, welche Hardwarekonfiguration zu der von dir genannten
> "#pragma" Konfiguration passt.
>
> "POSCMOD = EC" kommt mir wirklich verdächtig vor.

Es läuft auch mit der "POSCMOD = HS" - Einstellung auch nur mit 
Back-Up-FRC.

MPLab zeigt beim Debuggen folgendes an:

Target device PIC32MZ2048EFH100 found.
Device ID Revision = A1

Es ist also die Revision, die vom obengenannten Fehler betroffen ist.

Noch einmal Danke an alle für die Antworten.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren