mikrocontroller.net

Forum: Analoge Elektronik und Schaltungstechnik I/O Register Inhalt nach Einschalten der Betriebsspannung


Autor: Thomas Fuchs (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

vielleicht eine dumme Frage, aber sind die Register Inhalte (Multi 
purpose & I/O) immer Null wenn die Betriebspannung neu angelegt wird und 
das Programm neu gestartet wird?
Habe im Datenblatt darüber nichts gefunden. Nur Angaben zum Geschehen 
bei einem Reset. Denke aber das es ganz logisch wäre. Möchte aber sicher 
sein.
Vielleicht noch eine Frage. Wird ein Programm fehlerfrei ablaufen wenn 
es mit einer Betriebsspannung von 5V betrieben wird, der Reset aber erst 
bei 3,3V durch ein Überwachungs IC ausgelöst wird? Benötige Zeit um 
wichtige Daten bei einem Stromausfall ins EEPROM zu sichern. Werde es 
natürlich bald praktisch testen aber theoretisch geht es doch, oder?

Vielen Dank für eure Antworten.

Thomas Fuchs

P.S. Tolle Webseite und gutes Forum.

Autor: Jonas Diemer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi!

das mit den registern interessiert mich auch! im avrstudio werden die 
nämlich nicht auf 0 gesetzt, was darauf hindeutet, dass das im mcu auch 
nciht geschieht...

die zweite frage versteh ich nicht ganz. was genau willst du machen?

Autor: Siegfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zu Deiner 2 Frage nur ein Tipp.
Frag das Ereignis Spannungsabfall doch vor dem Regler und nicht hinter 
dem Regler ab, dann wird der Netzausfall früher erkannt, und du hast 
noch mehr Zeit auf das Ereignis zu reagieren.

Ggf. kann man den µC, der ja ohnehin sehr wenig Strom frist, durch einen 
eigenen Netzteilzweig versorgen (eigener Ladeelko, Spannungsregler 
usw.). D.h. der µC ist beim Netzausfall noch ein paar ms länger aktiv 
und kann die Peripherie bei Bedarf kontrolliert stillsetzen.

Siegfried

Autor: Thomas Fuchs (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Siegfried,

genau das hatte ich auch vor. Vor dem Regler über Interrupt das Ereignis 
frühzeitig erkennen. Und da der AVR locker bis 3V (2,7V) arbeiten soll 
denke ich das es klappt. Allerdings dauert das schreiben ins EEPROM 
relativ lange (8Bytes ca.32ms bei niedriger Ub). Mal sehen.

Thomas

Autor: Stefan_H (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Meiner Meinung nach reicht ein Elko nach dem Spannungsregler aus um zeit 
zu gewinnen. 4700mF bringt dir bei 5 V ca. 4s lang 5mA. Weiß nicht 
wieviel dein mikrocotroller braucht, aber das müßt doch reichen?

lg,

Stefan

Autor: Siegfried (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Spannungsabfall kann man schlecht (oder zu spät) am Ladeelko 
abgreifen. Besser noch eine Si-Diode zwischen Gleich-Riecht-Er und 
Ladeelko setzen, dann kann der AVR auf eine fehlende Halbwelle triggern. 
Dies sollte mit einem NPN-Transistor, der einen Basis-Emitter-Widerstand 
hat und über einen 1k-Widerstand in Reihe mit einer 5V6-Z-Diode an den 
+Pol des Gleichrichters möglich sein. Den Kollektor des Transistors über 
einen 1k an VCC und dann an einen geigneten Pin des AVR.

Mit einem Optokoppler direkt über einen Vorwiderstand im Sekundärkreis 
des Trafos geht das natürlich auch.

Die AVRs brauchen je nach Typ und Taktrate so um die 2 - 6 mA.

Zur Not tuts auch eine Pufferbatterie, die nur für den 
EEPROM-Schreibvorgang verwendet wird. anschliesend wird der AVR in den 
Power-Down-Mode gesetzt und braucht dann weniger als 1µA. Bei Atmel 
gibts überigens einige Warnhinweise zum Thema Power-Down und EEPROM.
Such mal nach:
"prevent EEPROM Corruption" und
Application-Note "AVR180: External Brown-Out Protection"
auf den Atmel-Seiten.

Siegfried

Autor: Jonas Diemer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
was is eigentlich nun mit den registern? sind die initialisiert oder 
nicht?

Autor: Thomas_D (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beim Power On Reset sind die Register auf jeden Fall initialisiert. Bei 
allen anderen Resets ist es unterschiedlich, teilweise variert es sogar 
von Derivat zu Derivat. Bei http://www.avrfreaks.com gibt es aber seit 
neuestem unter ACADEMY eine Application Note, in der die 
Registerzustände nach den verschiedenen Resets genau angegeben werden.

Autor: Jonas Diemer (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, danke.

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.