Forum: Mikrocontroller und Digitale Elektronik STM32L4 mit Supercap an VBAT?


von Bauform B. (bauformb)


Lesenswert?

hallo,

wie schalten die STM32L4 auf Batteriebetrieb um? Der Umschalter selbst 
wird ja gut beschrieben, aber nach welchen Kriterien wird der 
angesteuert? Manche RTC-Chips schalten nicht bei einer bestimmten 
Spannung, sondern benutzen einfach die höhere Spannung. In einem 
3.3V-Gerät wäre eine 3.6V-Batterie also etwas blöd.

Die Frage ist, wie weit soll ich meinen Supercap aufladen? 3.3V wäre 
schön einfach, aber evt. auch ziemlich undefiniert.

von Datenblattleser (Gast)


Lesenswert?

VBAT operation is automatically activated when VDD is not present.

von Bauform B. (bauformb)


Lesenswert?

All right then, keep your secrets. Maximal 3.1V ist sowieso besser für 
die Lebensdauer. Der Bonuspunkt ist nicht von mir.

Manche Chips haben auch integrierte Widerstände um den Supercap zu 
laden. Ob dazu in Reihe eine Diode eingebaut ist, ist auch geheim. Das 
heisst, evt. wird nur bis 2.7V geladen. Ja, Dokumentation ist 
aufwändiger als Hardware-Design.

von Nop (Gast)


Lesenswert?

Bauform B. schrieb:

> Die Frage ist, wie weit soll ich meinen Supercap aufladen? 3.3V wäre
> schön einfach, aber evt. auch ziemlich undefiniert.

Bei einem F4 mache ich das genau so, KISS. In Reihe noch ein 
Vorwiderstand zur Strombegrenzung beim Aufladen. 39 Ohm für 80mA. 
Außerdem noch ne Schottky-Diode gegen 3.3V, damit der Supercap nur VBAT 
speist und nicht den Rest der Schaltung erreicht:
1
     3.3V
2
      |
3
      V SD
4
      |
5
VBAT -+
6
      |
7
      R
8
      |
9
      C
10
      |
11
     GND

Der R ist absichtlich unterhalb von VBAT, damit VBAT beim Einschalten 
der normalen Versorgung sofort hochgezogen wird. Das langt für 1-2 
Wochen mit C=1F.

von Datenblattvorleser (Gast)


Lesenswert?

The switch to the VBAT supply is controlled by the power-down reset 
embedded in the Reset block.

During the startup phase, if VDD is established in less than tRSTTEMPO 
(Refer to the datasheet for the value of tRSTTEMPO) and VDD > VBAT + 0.6 
V, a current may be injected into VBAT through an internal diode 
connected between VDD and the power switch (VBAT).

von Bauform B. (bauformb)


Lesenswert?

Datenblattvorleser schrieb:
> a current may be injected into VBAT through an internal diode
> connected between VDD and the power switch (VBAT)

Na ganz toll, da kommt Freude auf :) Danke!

Inzwischen hab' ich die RV-8263-C7 entdeckt und festgestellt, dass mich 
diese externe RTC genau einen Interrupt-Pin mehr kostet, als wenn ich 
die interne vom STM32 benutze. Diese komplette RTC inkl. Quarz kommt im 
gleichen Gehäuse (3.2x1.5x0.8mm) wie ein 32kHz Oszillator und kostet 
sogar etwas weniger. Da fällt die Wahl leicht...


Nop schrieb:
> 39 Ohm für 80mA.
> Außerdem noch ne Schottky-Diode gegen 3.3V

Welche Diode nimmst du denn dafür? Der Leckstrom einer "normalen" 
Schottky ist ja höher, als was die RTC braucht. Die BAS70 ist deutlich 
besser, aber die verträgt nur 70mA abs.max. und sie hat schon bei 15mA 
1V Spannungsabfall. Andererseits sind 80mA natürlich angenehm, der 
Supercap soll ja irgendwann mal voll werden.

von Nop (Gast)


Lesenswert?

Bauform B. schrieb:

> Welche Diode nimmst du denn dafür?

Ich hab: BAT46, 150 mA, Uf=0.25 V, Ir=0.5 μA.

> Der Leckstrom einer "normalen"
> Schottky ist ja höher, als was die RTC braucht.

VBAT braucht beim F4 so um die 1µA typisch, je nachdem. Ist in derselben 
Größenordnung, also da könnte man noch vielleicht 50% mehr Zeit 
rausholen, aber 1-2 Wochen sind bei meiner Anwendung schon völlig OK, so 
daß ich da nicht mehr Aufwand reinstecken wollte.

> Andererseits sind 80mA natürlich angenehm, der
> Supercap soll ja irgendwann mal voll werden.

Eben. Andererseits ist das nur der Einschaltstrom, und der sinkt ja, 
wenn der Cap sich auflädt. Damit sinkt dann auch der Spannungsabfall 
über der Diode.

von Stefan F. (Gast)


Lesenswert?

Nop schrieb:
> Der R ist absichtlich unterhalb von VBAT, damit VBAT beim Einschalten
> der normalen Versorgung sofort hochgezogen wird.

Aber das ist gar nicht nötig, denn das IC schaltet intern auf die 
Versorgungsspannung, falls vorhanden.

Ich würde an den Pin einfach eine CR2032 anschließen, ohne weitere 
Bauteile. Das hält mindestens 10 Jahre.

von Bauform B. (bauformb)


Lesenswert?

Datenblattvorleser schrieb:
> During the startup phase, if VDD is established in less than tRSTTEMPO
> (Refer to the datasheet for the value of tRSTTEMPO) and VDD > VBAT + 0.6
> V, a current may be injected into VBAT through an internal diode
> connected between VDD and the power switch (VBAT).

Noch so ein Scherz:

https://www.reddit.com/r/embedded/comments/m0eh59/internal_rtc_is_not_working_with_vbat_in_stm32/
1
On a recent project, although using a different family,
2
stm32l496, it was noticed that if vbat value was between
3
0.3 to 0.9 the behaviour is unpredictable.
was ja bei einer Backup-Versorgung per Supercap ein ganz normaler 
Betriebszustand ist.

: Bearbeitet durch User
von Bauform B. (bauformb)


Lesenswert?

Und noch einer ;)
Laut L451- und L496-errata 2.2.5 kann man entweder die RTC oder das 
Clock Security System benutzen. Der Workaround ist lustig, natürlich 
haben wir immer ein Backup für das Backup:
1
If (...) the LSECSSON bit is set, reset the backup domain upon
2
each VDD power up (when the BORRSTF flag is set). If VBAT is
3
separate from VDD, also restore the RTC configuration, backup
4
registers and anti-tampering configuration.

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.