Hallo,
Ich arbeite mit einem PIC XLP 16 Bit Development Board mit einem
PIC24F16KA102.
Heute habe ich die Versorgungsspannung (Range von 1.8V - 3.6V) und den
Stromverbrauch mit einer Messung gegenüber gestellt und folgendes
beobachtet:
Meine Applikation braucht bei 3.6V Versorgungsspannung im Deep Sleep
Modus 950 nA, wenn ich die Versorgungsspannung verringere sinkt auch der
Strom im Deep Sleep Modus bis zu einer Versorgungsspannung von 2.8 V
(I=680nA).
Wenn die Versorgungsspannung weiter verringert wird (<2.8 V) sinkt zwar
der Strom im Deep Sleep Modus weiter, jedoch steigt der Strom nach dem
Wakeup extrem an.
folgendes hab ich gemessen:
VDD / I (Deep Sleep) / I (nach Wake up)
3.6 V 950 nA 40 µA
3.5 V 910 nA 34 µA
...
2.8 V 680 nA 13.5 µA
2.7 V 660 nA 100 µA
2.6 V 630 nA 110 µA
...
2.0 V 500 nA 200 µA
D.h. der Strom nach einem Wake up steigt mit sinkender
Versorgungsspannung auf einmal.
Kann mir jemand erklären warum das so ist?
Lg, Michaela
Hm, also das ist normal. Du musst Leistungsmässig denken... Weniger
Spannung mehr Strom, weniger Strom, höhere Spannung, Leistung bleibt
gleich ;o)
Gruss
reflection schrieb:> Weniger> Spannung mehr Strom, weniger Strom, höhere Spannung, Leistung bleibt
Danke für die Antwort aber das ist so nicht richtig ...
Der Strom sinkt ja mit der Spannung! (siehe Messwerte im ersten Post)
Und auf einmal bei 2.7V Versorgungsspannung steigt der Strom nach dem
Wake up extrem an.. !?
reflection schrieb:> Hm, also das ist normal. Du musst Leistungsmässig denken... Weniger> Spannung mehr Strom, weniger Strom, höhere Spannung, Leistung bleibt> gleich ;o)
So sollte sich der PIC nicht verhalten (Siehe Anhang). Die
Leistungsaufnahme steigt mit der Spannung. Sonst hätte es ja auch keinen
Sinn die Spannung zu senken um Energie zu sparen.
Die Messungen hab ich mit einem Agilent 34461A Digital Multimeter
durchgeführt, ein sehr hochwertiges Messgerät, also denke ich, dass die
Werte passen!
Walter schrieb:> Fällt der Strom denn wieder, wenn Du die Spannung nach dem Wakeup bei 2> V wieder nach oben drehst?
Ja der Strom fällt wieder wenn ich die Spannung nach oben drehe...
Ich hab mir gedacht, es könnte vl irgendein voltage regulator sein, der
unter 2,8V einschalten muss und dann mehr strom braucht? Ist aber nur
eine wage Vermutung...
Beachte, dass die PIC24 einen Linearregler für die Kernspannung von ca
2,5V integriert haben. Vermutlich steigt dessen Eigenverbrauch stark an,
wenn die Versorgungsspannung zu nah an die Drop-Out Spannung kommt.
Im Datenblatt stehen daher verschiedene Beschaltungsoptionen für
verschiedene Spannungsbereiche.
Florian V. schrieb:> Beachte, dass die PIC24 einen Linearregler für die Kernspannung von ca> 2,5V integriert haben.
Nicht der PIC24F16KA102!
Das gilt nur für 3.3 (+-10%) V Typen
welche dann einen externen Kondensator benötigen!
Florian V. schrieb:> Beachte, dass die PIC24 einen Linearregler für die Kernspannung von ca> 2,5V integriert haben.
Nich jeder PIC24 hat einen, Zitat Datenblatt:
>Some of the PIC24F K devices have an internal voltage>regulator. These devices have the voltage regulator>output brought out on the VCAP pin.
Der 24F16KA102 hat keinen Vcap Pin.
Walter schrieb:> Was läuft denn an integrierter Peripherie - Komparatoren, welcher> Oszillator, integrierte Bandgap Referenz usw?>> Gruß,>> Walter
Der PIC läuft mit 8MHz internen Quarz, Wakeup über Deep Sleep Watchdog
Timer alle 16 sekunden.
Peripherals werden alle mit dem PMD bits ausgeschalten befor ich den
Deep Sleep enable.
Nach dem Wakeup wird der ADC und SPI eingeschalten, der Task ausgeführt
und dann wieder alles abgeschalten und Deep Sleep again....
Laut Datenblatt auf Seite 220 wäre der Operating Current bei 8MHz 2.25
mA, das wäre aber laut meinen Messungen zu viel... ?!
Florian V. schrieb:> Beachte, dass die PIC24 einen Linearregler für die Kernspannung von ca> 2,5V integriert haben.
Das stimmt aber ist ja auch nur eine Vermutung, dass der mehr Strom
braucht...
Michaela schrieb:> folgendes hab ich gemessen:>> VDD / I (Deep Sleep) / I (nach Wake up)>> 3.6 V 950 nA 40 µA> 3.5 V 910 nA 34 µA
In welche Betriebsart geht der PIC nach dem Wakeup, und mit welcher
Oszillatoreinstellung? Wie ist die BOR Einstellung und die LPBOR
Einstellung?
Es ist möglich, dass der Spannungswert ein korrektes POR verhindert,
weil diese nicht über dem POR Trippoint liegt. Üblicherweise ist die
Stromaufnahme bis zum RESET dann etwas höher (der interne RC läuft nicht
korrekt an). Sobald der POR Trippoint überschritten ist, geht die
Stromaufnahme wieder zurück.
40 µA sind im "Normalbetrieb" bei 3.6 V nicht möglich.
Das geht nur im IDLE-Betrieb UND internem LPRC 32kHz Oszillator.
Um die Fragestellung zu klären braucht man schon die Info zur
Einstellung des PIC. Ist der übrigens schon programmiert, läuft also ein
Programm im FLASH nach dem Wakeup?
Michaela schrieb:> Florian V. schrieb:>> Beachte, dass die PIC24 einen Linearregler für die Kernspannung von ca>> 2,5V integriert haben.>> Das stimmt aber ist ja auch nur eine Vermutung, dass der mehr Strom> braucht...
Beachte, dass der PIC24F16KA102 keinen integriert hat.
Michaela schrieb:> Nach dem Wakeup wird der ADC und SPI eingeschalten, der Task ausgeführt> und dann wieder alles abgeschalten und Deep Sleep again....
Solche Messungen sollten mit statischen Bedingungen gemacht werden, da
Multimeter üblicherweise sonst Mittelwerte mit ungenügender
Messwerteanzahl Anzeigen. Das Signal sollte für eine Mindestzeit
(Geräteabhängig) stabil sein. Ist das also eventuell nur ein Messfehler?
Alternativ mal mit einem (Speicher)Oszilloskop an einem 100R Widerstand
in der Masseleitung schauen wie die Messignale aussehen.
Die Datenblätter von Microchip sind übrigens recht realistisch. Ich habe
für ein Projekt mit verschiedenen XLP 24er PIC's vergleichsmessungen
gemacht.
Auffällig war bei einem langsamen Übergang über den POR Trippoint eine
Zunahme des Stromverbrauchs (Hysterese bedingt).
Das zum Thema Messgerät:
http://www.eevblog.com/projects/ucurrent/
Stichwort: Burden Voltage
D.h. deine Messungen sind zwar schon recht gut, haben dennoch einen
merklichen Fehler, sofern es dir auf den genauen Stromverbrauch ankommen
würde, was aber ja nicht der Fall ist.
Hast du schon mal probiert nichts an den Einstellungen des PIC nach dem
Aufwecken zu ändern und ihn einfach nur aufzuwecken und wieder schlafen
zu legen?
Laut Beschreibung sollten 20nA im Deep Sleep verbraucht werden, weit
entfernt von deinen Messungen, d.h. irgendwas stimmt absolut nicht.
Verwendest du das mitgelieferte Beispiel oder hast du was eigenes
programmiert?
Wo misst du den Strom, vom PIC oder vom Board?
Max H. schrieb:> Wie sieht die Schaltung aus? Hast du vllt. andere Bauteile auf der> Platine, die mit <2.7V Probleme haben können?
ich verwende den auf der platine vorhandenen temperatursensor
(Vmin=2.3V) und einen MRF24J40MA RF Transceiver (Vmin=2.4V) also müsste
bei 2.7V noch alles passen...
Reiner Geiger schrieb:> Solche Messungen sollten mit statischen Bedingungen gemacht werden, da> Multimeter üblicherweise sonst Mittelwerte mit ungenügender> Messwerteanzahl Anzeigen. Das Signal sollte für eine Mindestzeit> (Geräteabhängig) stabil sein. Ist das also eventuell nur ein Messfehler?
ich denke nicht, dass es nur ein Messfehler ist, hab das ganze ja eine
zeit lang laufen gelassen!
Frank M. schrieb:> Hast du schon mal probiert nichts an den Einstellungen des PIC nach dem> Aufwecken zu ändern und ihn einfach nur aufzuwecken und wieder schlafen> zu legen?
Nein hab ich noch nicht, aber das wär eine gute Idee und das werd ich
probieren, wenn ich das nächste mal in der Uni bin
> Laut Beschreibung sollten 20nA im Deep Sleep verbraucht werden, weit> entfernt von deinen Messungen, d.h. irgendwas stimmt absolut nicht.> Verwendest du das mitgelieferte Beispiel oder hast du was eigenes> programmiert?
Das stimmt - aber die 20nA sind bei 1.8V VDD und ohne jeglich Peripherie
- ich hab ja noch den Watchdog timer laufen und lt seite 224 im
Datenblatt sind es dann 550 nA bei 1.8V bzw. 870 nA bei 3.3 V, was ganz
gut mit meinen messwerten übereinstimmt..
> Wo misst du den Strom, vom PIC oder vom Board?
Ich mess den Strom nur vom PIC.
Hm, also gibt es da wohl keine einfache Erklärung und ich muss mich noch
weiter im Labor damit beschäftigen .. :)
Michaela schrieb:> Hm, also gibt es da wohl keine einfache Erklärung und ich muss mich noch> weiter im Labor damit beschäftigen .. :)
Je einen Widerstand in der Vcc und Vss Leitung unterbringen und die
Differenz
betrachten. Da hast Du dann die Ströme, welche durch die Beschaltung
entstehen, und kannst diese entsrechend berücksichtigen. Ein
Speicheroszi im Labor kann Dir da bestimmt weiterhelfen .....
Hallo,
wichtig ist auch auch beachten, dass nicht verwendete Pins auf Ausgang
(TRISx löschen)konfiguriert und logisch LOW getrieben werden müssen.
Pullups müssen aus sein.
Sind die Pins als Eingang konfiguriert, kann das eine erhöhte
Stromaufnahme zur Folge haben - die sich auch bei verschiedenen
Spannungen unteschiedlich auswirken kann. Grund ist, dass die
Eingangsstufe undefiniert herumdengeln kann - das brauch etwas Strom.
Das steht auch im Datenblatt, ich glaube in dem Deep-Sleep Teil.
Irgendwas mit "unused Pins must be driven low" oder so.