Nabend, ich suche nach einer Möglichkeit einen binären Wert zu merken, wenn der Mikrocontroller von der Spannung getrennt wird. Dies sollte nicht über EEPROM laufen. Gibt es irgendwie ein Bauteil, was sich diesen Wert merken kann? Sodass ich das Bauteil an meienm Mikrocontroller anschließen kann und dann den Pin abfrage (High oder Low). Maik
Maik schrieb: > Dies sollte nicht über EEPROM laufen. Warum nicht? > Gibt es irgendwie ein Bauteil, was > sich diesen Wert merken kann? Ein EEPROM. Dafür ist das da. Alternativ: Batteriegepuffertes RAM, oder FERAM ... Da Du aber nur ein einzelnes Bit speichern willst, kannst Du auch ein bistabiles Relais verwenden. Das ist dann wenigstens auch noch mechanisch.
Dazu schließt man einen ausreichend großen Kondensator an einen PIN an, für den vorher ein PullUp aktiviert wurde. Beim Neustart wird dann direkt der Zustand geprüft.
Joe schrieb: > Dazu schließt man einen ausreichend großen Kondensator an einen PIN an, > für den vorher ein PullUp aktiviert wurde. Und der Kondensator wird bei spannungslosem MC über die Schutzdioden des MC-Pins entladen. Das geht also nicht. Und warum den Pullup?
Maik schrieb: > Dies sollte nicht über EEPROM laufen. Und was hast du dagegen? Vielleicht erklärst du mal dein eigentliches Problem > Gibt es irgendwie ein Bauteil, was sich diesen Wert merken kann? Sodass > ich das Bauteil an meienm Mikrocontroller anschließen kann und dann den > Pin abfrage (High oder Low). Warum verwendest du einen µC, wenn du ihn offensichtlich nicht verwenden willst - um es mal überspitzt zu formulieren?
Joe schrieb: > Dazu schließt man einen ausreichend großen Kondensator an einen PIN an Dazu bleibt der Kontroller zu lange ohne spannung. Eigentlich bekommt dieser nur ~10 mal am Tag für eine Kurze Zeit Spannung, muss dann auswerten ob eins oder null, kurz etwas arbeiten und rausschicken und dann wird die Spannung wieder weggenommen. EEPROM wollte ich vermeiden, da dieser ja irgendwann nicht mehr funktioniert. Aber ich denke, dass sollte etwas dauern. Werde es dann wohl doch darüber machen
Maik schrieb: > nur ~10 mal am Tag für eine Kurze Zeit Spannung, Und wenn der Strom angeht war er vorher aus! Was muss man sich da merken? Das ist doch wieder son "Ich hab keine Ahnung aber ich will das machen"
>EEPROM wollte ich vermeiden, da dieser ja irgendwann nicht mehr >funktioniert. Man kann sich auch einen WearLeveling Algorithmus bauen. Damit kann man mit relativ wenig EEPROM-Zellen eineige Jahre überbrücken, bis das EEPROM seine 100.000 Zyklen durch hat. Oder man nimmt ein FRAM, da hat ein paar Zyklen mehr ;-)
Matthias schrieb: >>EEPROM wollte ich vermeiden, da dieser ja irgendwann nicht mehr >>funktioniert. > > Man kann sich auch einen WearLeveling Algorithmus bauen. > Damit kann man mit relativ wenig EEPROM-Zellen eineige Jahre > überbrücken, bis das EEPROM seine 100.000 Zyklen durch hat. > Oder man nimmt ein FRAM, da hat ein paar Zyklen mehr ;-) Selbst wenn man gar nichts in der Richtung macht, reichen 100.000 Zyklen für 10.000 Tage, das sind über 27 Jahre! Maik schrieb: > nur ~10 mal am Tag Hab ich richtig gerechnet? :-)
Maik schrieb: > EEPROM wollte ich vermeiden, da dieser ja irgendwann nicht mehr > funktioniert. Für EEPROMs werden typisch 1 Million Schreibzyklen (z.B. AT24C32) angegeben. Bei deinen 10 Zyklen pro Tag ist also der Betrieb für die nächsten 250 Jahre eigentlich nicht gefährdet. Und wenn das nicht reicht, schreibst du deine Software so, dass der µC den Pinzustand nicht immer in der selben Speicherstelle verewigt. O.g. EEPROM hat bietet immerhin 4kB und ist eins der kleinen.
Max M. schrieb: > Und wenn der Strom angeht war er vorher aus! > Was muss man sich da merken? Das ist mir auch klar. ich möchte ja nicht den zustand wissen, wo der Mikrocontroller aus war. Ich möchte den Zustand wissen, wo der Mikrocontroller das letzte mal an war. Also Kontroller geht an -> Zustand = 1 Kontroller geht aus Kontroller geht wider an -> letzter Zustand = 1, Neuer Zustand = 2 Kontroller geht aus Kontroller geht wider an -> letzter Zustand = 2, Neuer Zustand = 1 usw. Werde es jetzt über EEPROM machen. Ist wahrscheinlich auch die einfachste Lösung.
Zur Not gibt es da noch das gute alte Flip Flop. In der CMOS Version brauch es im statischen Zustand so gut wie keinen Batteriestrom.
Max M. schrieb: > Und wenn der Strom angeht war er vorher aus! > Was muss man sich da merken? > Das ist doch wieder son "Ich hab keine Ahnung aber ich will das machen" Mach hier kein Wellen -eine alte Baustelle wartet auf Dich. Dort ist der von Dir ersehnte Schaltplan eingetroffen. Man erwartet doch Deinen fachkundigen Rat! Beitrag "Re: Betätigung der Hupe resettet Kettenöler"
Und zudem muss man das Eeprom nur dann beschreiben, wenn sich der Pegel des Pins geändert hat...
Wenn ich die Nachricht von 21:02 richtig verstehe, geht es nur um einen Wechselzustand. -> D-Flip Flop das bei jedem Einschalten den Zustand wechselt und abgefragt wird.
EEPROM oder bistabiles Relais. Hast Du dir schon überlegt, wer dem µP den Tipp geben soll: Es ist Feierabend! Kann nicht schaden, diesen Tippgeber, zusammen mit der Entscheidung zum Speicher und dessen Implementierung, festzulegen.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.