Forum: Mikrocontroller und Digitale Elektronik STM32F4xx - Batterie wird leer gezogen


von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Ich habe einen STM32F417VGT6 und möchte die Uhr und einige Variablen per 
Batterie stützen.

3v3 --->|------+
               +-----VBatt Pin
Batterie-->|---+

Wenn ich jetzt die Batterie heraus nehme, und wieder einstecke, dann 
wird ca. 1,1µA verbraucht.

Wenn ich jetzt die Versorgungsspannung einschalte und wieder aus 
schalte, dann wird 145µA verbraucht und viele IO Pins habe 0,6..0,7V 
Ausgangsspannung.

Batterie raus/rein, wieder 1,1µA.

Dann habe ich die RTC Initialisierungen aus dem Code entfernt und alle 
Clocks für den RTC Bereich nicht mehr aktiviert, das gleiche.

Weiß jemand warum der nach dem ersten Start so viel Strom aus der 
Batterie holt?

Ich prüfe das jetzt schon eine weile, habe aber keine Idee mehr was ich 
sonst noch testen kann.

Grüße Markus.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Ach ja, mein kleines Testprogramm:

main()
{
  while(1);
}

ohne Startupcode.

von Mike R. (thesealion)


Lesenswert?

Nimm mal die Diode bei den 3V3 komplett raus. Wenn ich mich richtig 
erinnere schalten die ST die Versorgung intern um (zur not einmal im 
Datenblatt kontrollieren).

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Hatte ich schon, dann kann die CPU erst gar nicht starten.
Bzw. startet nur dann wenn nicht alle Steckkarten im Rack gesteckt sind.

Die HW der Karten sind alle schon zig mal von mir und einem Kollegen 
durch getestet.

von LTC1043 (Gast)


Lesenswert?


von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Ich habe gerade mal an den STM32F4-Discovery eine Batterie 
angeschlossen, da klappt das richtig und braucht auch nur wenige µA 
Strom. (R26 ausgelötet)

Damit ist zumindest mal sicher gestellt, dass mein Messgerät kein Mist 
misst.

Bei einem STM32F103 gibt es dieses Problem nicht.

Ich habe bei ST im Forum mal gepostet. Vielleicht hilft das.

Im Chip muss noch ein Bug drin sein, denn wenn man das Board 
einschaltet, dann wird aus der Batterie für kurze Zeit einen größeren 
Strom entnommen.
Das darf eigentlich auch nicht sein. Bei mir hat sich das sogar so 
ausgewirkt, dass unter Umständen die CPU nicht starten konnte.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Ich habe jetzt noch ein paar Tests gemacht.

Die Spannung kommt aus den Versorgungsanschlüsse heraus, 0,63V.

Ich habe ein paar Pins die als Pull-Up definiert sind und die gehen an 
einen nicht bestückten Jumper-Block. Die haben 0,59V Spannung.

Wenn ich jetzt her gehe und Vcc/GND kurz schließe und den Kurzschluss 
wieder entferne, dann wird von der Batterie nur noch 1,8µA verbraucht, 
so wie sein soll. (Mit Pinzette bei den Stützkondensatoren kurz 
antippen.)

Das kann doch wohl nicht sein, dass man erst Vcc/GND kurz schließen 
muss, damit die Batterie nicht innerhalb von weingen Tagen leer wird :-/

Spannung anlegen, wieder weg nehmen, das gleiche.

Dies habe ich auch konfiguriert:
PWR_PVDLevelConfig(PWR_PVDLevel_7); // Initialisierung 
Spannungsausfall-Reset
PWR_PVDCmd(ENABLE);
PWR_BackupRegulatorCmd(ENABLE); // Backup-Register Spannungs aktivieren
aber hilft nicht.

Wenn noch jemand eine Idee hat?
Noch ein weiteres Register das gesetzt werden könnte oder muss?

von Tomas K. (Firma: tktronic) (tktronic)


Lesenswert?

Markus,

kontakte mal einen FAE (am besten beim Distri Deiner Wahl) oder wenn Du 
eine Adresse hast, den ST Support in Tschechien, die hatten in der 
Vergangenheit recht pfiffige Leute (falls es die dort noch geben 
sollte).

Gruss + viel Erfolg, tom.

von Markus M. (Firma: EleLa - www.elela.de) (mmvisual)


Lesenswert?

Ich habe jetzt eine kleine Schaltung dazu erfunden, die macht jetzt bei 
Spannungsunterbruch für 1 Sekunde einen Kurzschluss mittels 100R 
Widerstand (Vcc/GND, >> 1,5mA kurzzeitig aus Batterie).

Dann klappte das mit der Backup-Batterie auch 5x richtig. Danach hat der 
Trick die nächsten 10x versagt. Und dann geht das wieder?!?

Das wohl auch nicht feine Art und nicht 100% sicher.

Ich werde wohl oder übel den Distri hinzuziehen müssen.

von Peter D. (peda)


Lesenswert?

Wenns keinen Bug bereinigten kompatiblen Typ gibt, hilft wohl nur eine 
externe RTC nehmen.
Z.B. der DS1904 enthält Quarz und Batterie.


Peter

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.