Forum: Mikrocontroller und Digitale Elektronik PIC24F Stromsparend auslegen


von Raffini (Gast)


Lesenswert?

Hi,

ich hab mir folgenden PIC im SPDIP-Package gekauft: PIC24FJ32GA102
Habe ihn nach Datenblatt beschaltet und betreibe ihn mit 3V und habe 
auch den VoltageRegulator an Vcore mit einem Kondensator beschaltet.
Ich nutze den C30 Compiler und lasse den PIC mit 1Mhz FRC-Oszillator 
takten. (8 Mhz durch RCDIV auf 1Mhz getaktet). Folgende Einstellungen 
habe ich zusätlich unternommen:

Config-Bits:
_CONFIG1(FWDTEN_OFF & ICS_PGx1 & GWRP_OFF & GCP_OFF & JTAGEN_OFF);
_CONFIG2(POSCMOD_NONE & I2C1SEL_PRI & IOL1WAY_OFF & OSCIOFNC_ON & 
FCKSM_CSDCMD & FNOSC_FRCDIV & IESO_OFF);
_CONFIG3(SOSCSEL_IO);
_CONFIG4(DSWDTOSC_LPRC & DSBOREN_OFF & DSWDTEN_OFF);


CODE:
//Configuration Oszillator
  OSCCON = 0x7705;
  CLKDIV = 0x0300;
//Configuration Alle Peripherie abgeschaltet
    PMD1 = 0xFFFF;
  PMD2 = 0xFFFF;
  PMD3 = 0xFFFF;
  PMD4 = 0xFFFF;
//Alle Eingänge auf input
    TRISA = 0xFFFF;
    TRISB = 0xFFFF;

habe dann eine while(1) schleife laufen...

Jetzt zum Problem. Ich möchte gerne auf den im Datenblatt angegeben 
Strom von 0.395 mA kommen. Im moment habe ich beim "Standalone" PIC 
(also ohne debugger) eine Stromaufnahme von 0.9 mA.

Wie komme ich da hin?

von Raffini (Gast)


Lesenswert?

Sorry muss mich korrigieren, ich möchte auf den Strom von 0,41mA kommen

von Arc N. (arc)


Lesenswert?

Raffini schrieb:
> Jetzt zum Problem. Ich möchte gerne auf den im Datenblatt angegeben
> Strom von 0.395 mA kommen. Im moment habe ich beim "Standalone" PIC
> (also ohne debugger) eine Stromaufnahme von 0.9 mA.
>
> Wie komme ich da hin?

Langsamerer Takt.
Die 0.41 mA gelten (siehe DB S.267 unten Note 2) nur wenn der Takt 
extern zugeführt wird. Der FRC braucht aber auch noch etwas...

von Raffini (Gast)


Lesenswert?

Ok, dann werd ich mal den FuGen auspacken.

von Raffini (Gast)


Lesenswert?

also hab jetzt 0.642mA hm da müsste aber noch etwas drinne sein...

von usuru (Gast)


Lesenswert?

Bei PICs kann man die Hardware-Komponenten häufig ausschalten 
("disable") ADC, Vref, Comparator, PWM, Timer, schau mal bei den 
Control-Registern nach: beim ADC heisst das Bit meist ADON.

Ich gehe mal davon aus, dass das bei nden PIC24 genau so läuft wie bei 
den kleineren PICs

von Arc N. (arc)


Lesenswert?

usuru schrieb:
> Bei PICs kann man die Hardware-Komponenten häufig ausschalten
> ("disable") ADC, Vref, Comparator, PWM, Timer, schau mal bei den
> Control-Registern nach: beim ADC heisst das Bit meist ADON.
>
> Ich gehe mal davon aus, dass das bei nden PIC24 genau so läuft wie bei
> den kleineren PICs

Das passt schon..
Bei den 24ern gibt's die zwar auch, über die PMDx-Register lässt sich 
zusätzlich noch der Takt zu den Modulen abschalten, was noch etwas mehr 
Strom spart.
Zudem gibt's noch bei div. Modulen xxxIDL-Bits mit denen festgelegt 
werden kann, ob sie im Idle weiterlaufen sollen oder nicht.

von Raffini (Gast)


Lesenswert?

Ja bin jetzt mit dem externen Clock auf 0.413mA.
Das sieht doch gut aus, bin zufrieden. Jetzt nochmal was anderes. Die 
Datenblattangaben sind spezifiziert für 0.5 MIPS. Meine Fcylce = Fosc/2 
= 500KHz. wie kann ich das jetzt auf MIPS umrechnen. sind 500KHz Fcycle 
= 0.5 MegaInstructionspersecond?

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.