mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Mikrokontroller unordnungsgemäßig abgeschaltet


Autor: Campus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi,

Gibt’s Erkennungsmechanismen, wenn ein Mikrokontroller
unordnungsgemäßig abgeschaltet (z.B. bei der Uebertragung von Daten)
wird?

MfG
Campus

Autor: Markus_8051 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Campus: Positiv!

Suche nach "Brown out detection"!

Habe gerade mal nachgeschaut, was das eigentlich auf deutsch heißt. In
einem Onlinewörterbuch steht da "Büschelentladung" als technische
Übersetzung ?!?

Auf Mikrocontrollern wird das oft in Zusammenhabg mit Watchdog und
Power On Reset erwähnt.

Autor: Johannes Raschke (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"Brown Out Detection" erkennt, wenn die Versorgungsspannung unter
einem Minimalwert liegt.
Campus, Du beschreibst nicht ganz genau, welchen Zustand Du erkennen
möchtest. Vielleicht reicht ja schon der eingebaute Watchdog.
Eine Alternative wäre ein Pufferkundensator für die Versorgungsspannung
nach einer Diode bei regelmäßiger Messung der Eingangsspannung - dann
kann der Controller vor dem Abschalten noch "bescheid sagen".
Da ein uC aus vielerlei Gründen seine Tätigkeit einstellen kann, würde
ich für sehr kritische Anwendungen eine Art "Toter Mann - Schaltung"
vorschlagen. Alle paar ms klappert der Controller mit einem Ausgang und
setzt damit einen externen Timer (z.B. NE555) zurück. Bleibt das Signal
aus, löst der Timer nen Alarm aus.

Autor: TravelRec. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Idee mit dem Watchdog, sofern vorhanden, ist schon ganz gut. Wenn
der kommt und der µC über RESET springt, kann man dort einen Ausgang
aktivieren , an dem eine LED hängt, die dann leuchtet. Somit weiß man,
daß der Watchdog ausgelöst hat. Den Ausgang setzt man nach einiger Zeit
dann wieder zurück, um einen erneuten Reset auswerten zu können. Dieses
Schaltsignal kann dann auch von weiteren "Alarmschaltungen"
ausgewertet werden.

Autor: Campus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das ist die Beschreibung über den Watchdog meines uCs:

The purpose of the Watchdog is to reset the microcontroller within a
reasonable amount of time if it enters an erroneous state.

Ich weiß immer noch nicht, wie ich den Watchdog in meinem Fall
einsetzen soll. Wenn der Strom fällt aus, gehen alle Informationen in
Register und Speicher verloren. Wie bemerkt der uC beim nächten Start,
daß die Versorgung weg war?

Gruss
Campus

Autor: Tom (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

@Campus, der Watchdog bewahrt dich viel mehr vor Software-Fehlern, die
in eine Endlosscheife führen: Bleibt das Resetten des WDTs zu lange
aus, so löst dieser selbstständig einen Reset aus und das Programm
beginnt von vorne. Schau mal genau im Datenblatt nach, für meine MSP430
ist dort beschrieben, was man wie auswerten kann nach einem Reset. Wie
du aber nach einem Reset feststellen könntest, ob eine Datenübertragung
im Gange war, kann ich dir so leider auch nicht sagen.

Gruss

Tom

Autor: Umbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was willst Du denn genau erkennen?

Soll der Sender Deiner Daten erkennen, daß der Empfänger
(-Mikrocontroller) kein Strom hat, oder soll der Empfänger merken, daß
er wieder eingeschaltet wurde und vorher offensichtlich während eines
Datenempfangs ausgeschaltet wurde?

Du musst schon genau sagen, bzw. die im Klaren darüber sein, was Du
exakt feststellen willst. Dann kann man Dir auch weiter helfen.

Autor: Campus (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Mein uC soll Daten von einem FRAM ablesen und im internen Flash
speichern. Da das System jederzeit abgeschaltet werden kann, entsteht
dieses Problem. Wenn ein Abschalten bei der Datenübertragung geschen
würde, müßte das System an diesen Unfall erinnern!

Gruss
Campus

Autor: Chief Brady (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Na, dann setze doch im internen Flash ein Flag vor dem Auslesen des FRAM
und lösche es wieder, wenn der Vorgang beendet ist. Wenn beim  nächsten
Einschalten das Flag gesetzt ist, weisst du, dass der Vorgang beim
letzten mal nicht korrekt beendet wurde.

Autor: Unbekannter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eben. Das kannst Du auch feiner machen, also pro Block oder so im EEPROM
speichern, wieviel Du schon ausgelesen hast. Eben ein
"Mini-Journaling-Dateisystem" implementieren.

Allerdings ist mir noch nicht ganz klar, warum der Mikrocontroller
nicht einfach von vorne beginnt, das FRAM auszulesen, wenn er
eingeschaltet wird...

Irgendwie ziemlich wirr, Dein Problem...

Autor: Spyker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Auch wenn die Klatstellung sehr, sehr spät kommt:
Was immer eine Büschelentladung sein mag.... mit "Brown-Out" hat es ganz 
sicher nichts zu tun. Ein Brown-Out bezieht sich auf einen 
Spannungseinbruch oder eine Unterspannung. Im Vergleich zum Black-Out 
geht die Spannung aber nicht ganz weg.

Autor: Alexander Liebhold (lippi2000)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde lieber alles im FRAM machen. Vielleicht reicht schon ein Flag 
aus oder du speicherst immer en einer definierten Stelle die Adresse, 
aus der gelesen wurde.

EEPROm würde ich nicht unbedingt nehmen um so viele Daten zu speichern 
(1 Lesezyklus = 1 EEPROM Schreibzyklus), da dieser nur begrenzt 
wiederbeschreibbar ist. In so einem Fall sind eingige Tausend 
Speichervorgäng schnell erreicht.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.