pic32 maximale externe Frequenz beim Betrieb mit einem internen 8-MHz-RC-Oszillator

7

Ich bin völlig neu in PICs und habe noch nie mit einem so komplexen Teil gearbeitet. Insbesondere frage ich mich, ob es möglich ist, einen Referenztakt (REFCLKO im Datenblatt) mit 11,2866 MHz zu erzeugen, während er auf dem internen 8-MHz-Oszillator ausgeführt wird (der 8-MHz-Takt wird durch eine PLL von bis zu 40 MHz verstärkt, die der Kerntakt ist). . Ich habe dies versucht und habe nur auf das Oszilloskop geschaut, um festzustellen, dass diese synthetisierte Wellenform einen sehr offensichtlichen Jitter aufweist (gemessen 25 ns = 1 / 40MHz Jitter) und die Frequenz nicht korrekt aussieht. Das Verlangsamen von REFCLKO auf Geschwindigkeiten unter 8 MHz führte zu einer schönen Wellenform.

Es erscheint mir logisch, dass Sie die bereitgestellten Register verwenden könnten, um einen 11,2896-MHz-Takt auf REFCLKO aus der 40-MHz-Kernfrequenz abzuleiten. Warum funktioniert das nicht richtig? Benötige ich einen externen Quarzoszillator mit einer Frequenz von mehr als 11,2866 MHz, damit dies funktioniert?

Ich habe einen Blog-Beitrag auf eev-Blog gesehen, in dem Folgendes gesagt wurde: Obwohl die Kernfrequenz von 8 MHz auf 40 MHz angehoben wird, beträgt die maximal mögliche externe Frequenz 8 MHz, aber es gab keine Erklärung dafür. Bitte helfen Sie !!!

BEARBEITEN:

Es scheint, dass die Frequenz von REFCLK nicht auf 8 MHz beschränkt ist, sondern dass die Frequenz instabil ist, wenn das ROTRIM-Register ungleich Null ist. Das ROTRIM legt den Bruchteil des Teilers fest. Auf diese Weise kann ich zum Beispiel einen stabilen 10-MHz-Takt (40 MHz geteilt durch 4,0) erhalten, aber eine Feinabstimmung mit einem Bruchteiler führt zu einer schlechten Wellenform.

Alex
quelle
Warum nicht den PIC mit dieser oder der halben Geschwindigkeit laufen lassen?
Ignacio Vazquez-Abrams
können Sie näher darauf eingehen?
Alex
4
Da es sich um eine Audioanwendung handelt, sollten Sie angesichts der Taktfrequenz nicht mit PLLs herumspielen, sondern direkt zu einem 11,2896-MHz-Quarz wechseln - entweder auf dem PIC oder einem externen Oszillator.
Brian Drummond
3
Sie können diese Frequenz nicht direkt aus einem 40-MHz-Takt erzeugen, daher muss der Generator Basiszeitperioden aus den hohen und niedrigen Perioden des erzeugten Takts verlieren und gewinnen, was zu einer nervösen, asymmetrischen Wellenform führt.
Ignacio Vazquez-Abrams
1
Wenn Sie genau 11,2896 MHz suchen, sehe ich nicht, wie etwas, das auf dem internen Oszillator basiert, für Sie funktionieren wird, da es nur innerhalb von 1% genau ist. Können Sie 11,2866 MHz +/- 1% tolerieren?
Willis Blackburn

Antworten:

1

Wie @Brian Drummond vorschlägt ... ziehen Sie REFCLKO nicht einmal für eine Anwendung in Betracht, die genaue Timing-Spezifikationen erfordert (während Sie über der Kerntaktrate UND in einem ungeraden Intervall UND bei Ausführung von der internen Taktquelle liegen!).

Sie haben wahrscheinlich nicht viel darüber gesehen, weil es in der Praxis einfach nicht gemacht wird. Ja, das Gerät kann intern eine 8-MHz-Referenz auf 40 MHz erhöhen - aber wie @Ignacio erklärt, kann REFCLKO mit ROTRIM nur ungefähr 11,2866 MHz erreichen - und zwar erattisch -, sodass es zu Jitter und viel davon kommt.

Ich weiß, es ist verlockend zu wollen, dass dieser eine PIC "alles macht". In diesem Fall ist es jedoch eine viel bessere Idee, ein 0,39-Dollar-XTAL , einen Resonator usw. für dieses andere Gerät zu verwenden, von dem Sie wissen, dass es innerhalb eines bestimmten ppm liegt. Oder noch besser, verwenden Sie ein Vielfaches davon direkt in den PIC und geben Sie eine (gleichmäßige) Aufteilung an dieses Gerät weiter. Dann wird alles synchronisiert.

Beachten Sie auch, dass die Spezifikation für eine typische PIC32MZ0512EFE064 CLKO-Stabilität %±0.25 und auf der nächsten Seite die FRC-Stabilität 5% und die LPRC noch schlechter ist. Also selbst wenn es könnte Ausgang ein flimmerfreie 11.2896MHz, gibt es keine Garantie , es wäre nicht 5%, sogar 15% oder mehr, wenn die FRC oder LPRC verwenden und 0,5% , wenn ein Referenzoszillator verwendet.±±

rdtsc
quelle