Absenken der PIC-Taktfrequenz

Wie senke ich die Taktfrequenz eines PIC18F2550 und berechne die peripheren Teiler neu?

Ich versuche es kühler laufen zu lassen. Derzeit läuft es mit 12 MIPs/48 MHz (USB-CDC-ACM).

Antworten (3)

Wenn Sie derzeit mit 48 MHz arbeiten, verwenden Sie einen externen Quarz. Sie können die Frequenz verringern, indem Sie die Bits 2:0 im PLLDIV-Register ändern, aber wir müssten die externe Quarzfrequenz kennen und welche Peripheriegeräte Sie anpassen möchten. Ist es nur das USB-Subsystem, das Sie verwenden müssen?

Als Antwort auf Ihren Kommentar:

Sieht so aus, als ob Sie es ohne Hardwareänderungen auf 5 MHz herunterbekommen können. Werfen Sie einen Blick auf Tabelle 2-3 des Datenblatts. Schalten Sie den Taktmodus um, um die PLL zu deaktivieren, und stellen Sie CPUDIV1: 0 auf 11 ein, und Sie erhalten einen 4-fach-Teiler auf 5 MHz.

Es ist eine IR-Empfängerschaltung (dangerousprototypes.com/docs/USB_Infrared_Toy_schematic_and_partlist). Es verfügt über einen IR-Empfänger, eine IR-LED und einen 20-MHz-Quarz. Die Wärme kommt vom PIC in der Nähe des USB-Anschlusses.

Abhängig von Ihrer Anwendung können Sie versuchen, den PIC in den Ruhezustand zu versetzen und einen Interrupt mit einer RC-Schaltung zu verwenden, um ihn regelmäßig aufzuwecken.

Der PIC18 verfügt über eine Reihe von Energieverwaltungsmodi, einschließlich eines Leerlaufmodus, der es dem Timer (und Interrupts) ermöglicht, weiter zu laufen, während der Prozessor nicht ausgeführt wird. Daher sollte die RC-Schaltung nicht erforderlich sein. Ich stimme zu, dass die Verwaltung der Stromversorgung mit Schlaf-/Leerlauf-/Betriebszuständen eine großartige Idee ist, aber es wäre schwierig, Ihre vorgeschlagene Schaltung auf diesem Board unterzubringen.

Das ist ein seltsamer Ort, an dem das Board heiß wird. Am anderen Ende, in der Nähe von R4, T1 und der TX-LED, könnte es definitiv warm sein, aber an dem Ende, von dem Sie sagen, dass es warm ist, passiert nichts! ( Schema , Layout )

Laut Datenblatt (S. 363) sollte die Verlustleistung in Ihrem PIC sein:

Pdis = VDD x {IDD – Σ IOH} + Σ {(VDD – VOH) x IOH} + Σ(VOL x IOL)

Dies verwendet die Power = Voltage * CurrentGleichung, um zu sagen, dass die gesamte Verlustleistung die Summe der durch den Betrieb des Chips verbrauchten Leistung (ohne angesteuerte Ausgänge) plus jeglicher Verlustleistung an den stromliefernden Transistoren plus jeglicher Verlustleistung an den stromsenkenden Transistoren ist. Siehe Seite 375 für Daten zu Ausgangsspannungen und -strömen. Es sieht jedoch so aus, als ob es gemäß dieser Gleichung nur eine minimale Verlustleistung geben sollte.

Drei Dinge, die ich mir ansehen würde:
- Die nächste Seite enthält ein Spannungs-/Maximalfrequenzdiagramm. Es zeigt, dass Sie nur mit 48 MHz arbeiten dürfen, wenn Sie über 4,2 V laufen. Ist dies der Fall, wenn Sie von Ihrem ICSP-Header aus arbeiten? Wenn hier die Spezifikation überschritten wird, kann dies zu Problemen führen, da die Transistoren nicht schnell genug geschaltet werden und Durchschussströme entstehen.
- Dieses Mikro enthält einen integrierten 3,3-V-LDO für den USB. Wenn Sie Strom von diesem Pin abziehen, verbrauchen Sie Strom im Mikro. Wenn Sie nicht ständig über USB kommunizieren, können Sie diesen Regler mit dem VREGEN-Konfigurationsbit im CONFIG2L-Register deaktivieren.
- Sie haben es einmal heiß gemacht, es kann jetzt einen schwachen internen Kurzschluss haben. Versuchen Sie es mit einem anderen Mikrocontroller oder Board. Das ist unwahrscheinlich, aber möglich.

Das Problem ist, wenn das Gerät in einem Gehäuse eingeschlossen ist, dann wird der PIC wärmer.