Forum: Mikrocontroller und Digitale Elektronik Teensy 4.1 RTC soll per Interrupt controller einschalten


von Ingo T. (ingotron)


Lesenswert?

Hallo,
ich habe mich bisher mit diversen Arduinos herumgeschlagen, vorwiegend 
in BASCOM und Assembler programmiert und muß mich nun um einen Teensy 
4.1 kümmern, mit dem ich bisher keine Berührung hatte. Dieser soll nach 
erstmaligem Einschalten ein paar analoge Daten messen, Berechnugen 
durchführen und Zeiten berechnen, sowie die daten auf SD-Karte und 
E-Paper-Display ausgeben (kann er inzwischen). Dann soll er einen Aktor 
für eine berechnete Zeit einschalten und danach ausschalten. Dann soll 
er sich selbst, nachdem er dem RTC eine Weckzeit mitgeteilt hat, 
schlafen legen (um Akkuleistung zu sparen). Dann möchte ich ihn gern vom 
eigenen RTC per Interrupt wecken lassen. Etwas ähnliches habe ich in 
BASCOM mit dem Arduino (ATmega328P) erfolgreich in kleinen 
Loggerprojekten realisiert (mit RTC DS3231 Modul). Beim Teensy 4.1 fehlt 
mir momentan die notwendige Info zum internen RTC bzw. dessen 
Möglichkeit den Controller aus dem Sleep Mode (SNVS mode) zu wecken.

Hat das hier evtl. schon jemand getan und kann mir helfen?

VG Ingo.

von Frank K. (fchk)


Lesenswert?

Ich schaue mir gerade das hier an:
https://www.analog.com/en/products/ltc2956.html
Das ist ein Power Controller, der ein System periodisch einschalten 
kann. Das System führt dann seine Aufgaben aus und das dem Power 
Controller, dass er fertig ist. Der Power Controller schaltet das System 
darauf hin aus - bis zum nächsten Wecken.
Vorteil: Der Mikrocontroller ist aus. Komplett aus. Stromlos. Passiv. 
Das einzige, was dann noch Strom verbraucht, ist der Power Controller 
mit seinen 800nA. Der hat auch einen "ganz aus" Modus, wo er nur noch 
300nA braucht.

Das Einstellen der Zeiten geschieht mit Widerständen.

fchk

von Ingo T. (ingotron)


Lesenswert?

Hallo Frank,

das ist ein interessantes Bauteil, das ich bisher auch nicht kannte. 
Allerdings sind die einstellbare Zeiten nicht quarzgenau und nicht mit 
der Echtzeit synchronisiert. Eine externe (Not-)Lösung unter Nutzung 
eines RTC-Chips DS3231 und einiger Transistoren, die dann auch den 
Teensy komplett stromlos schaltet, habe ich da. Ich würde halt nur gern 
die internen Möglichkeiten des Teensy nutzen, wenn sie denn dafür 
geeignet sind. Immerhin hat der benutzte Controller eine programmierbare 
interne Spannungsabschaltung und eben eine batteriegepufferte RTC.

VG Ingo.

von Ingo T. (ingotron)


Lesenswert?

Ich habe noch ein wenig im Datenblatt des Controllers (i.MX RT1060 
Processor Reference Manual, Rev. 3, 07/2021) gestöbert und inzwischen 
gefunden, wie man den RTC als programmierbaren Wecker nutzen kann. 
Allerdings lese ich das Datenblatt so, daß im SNVS Mode (Low Power) der 
RTC chip nicht nutzbar ist. ("The RTC is driven by a dedicated clock, 
which is off when the system power is down.") Die Stützbatterie sorgt 
sicher dafür, daß die Uhr weiterläuft, aber die Chance von dort einen 
Wake-Up-Interrupt zu initiieren, ist wohl eher nicht gegeben. Dann wird 
wohl kaum etwas an einer externen Lösung mit einem weiteren RTC-Chip 
vorbeiführen, es sei denn hier hat noch jemand einen Tip für mich.

VG Ingo.

: Bearbeitet durch User
von Alexander (alecxs)


Lesenswert?


von Ingo T. (ingotron)


Lesenswert?

Vielen Dank, das schaue ich mir an und werde es ausprobieren.

VG Ingo.

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.