ATMega8 beim start zurücksetzen?

#979041
@  Fritzele (Gast)

>zurücksetze, muss ich dann die register, oder sonstige speicher manuell
>auf 0 zurücksetzen?

Wenn das dein Programm braucht, dann ja.

> oder macht das der atmega8 dann automatisch?

Nein. Nur die IO-Register haben definierte Resetwerte.

MFG
Falk
Gast #979049
Ich versteh den Sinn der Frage nicht.
Die Voraussetzung das Programme stabil laufen ist doch, dass das 
ausgeführte Programm "Herr der Register" ist und nicht irgend ein 
Zufallsprodukt bei der Initialisierung.
#979053
Register beschreibt man häufig so, dass man nur bestimmte Bits setzt und 
andere in Ruhe lässt. Falls durch das vorige Programm ein Bit gesetzt 
hat und der µC resettet wird, dann würde er ja nicht mehr richtig 
funktionieren.
Hoffe ich hab mich nicht zu unverständlich ausgedrückt. Soll heißen, 
dass - wenn Register nicht zurückgesetzt werden - bei der 
Initialisierung das ganze Register beschreiben sollte und nicht nur 
einzelne Bits.

Beim RAM sollte man halt beim Arbeiten mit Pointern im Hinterkopf haben, 
dass das RAM beim Reset nicht gelöscht wird und der RAM nicht leer ist.
#979081
@  ich (Gast)

>Ich versteh den Sinn der Frage nicht.

Ganz einfach. Variablen müssen initialsiert werden, meist mit Null.

>Die Voraussetzung das Programme stabil laufen ist doch, dass das
>ausgeführte Programm "Herr der Register" ist und nicht irgend ein
>Zufallsprodukt bei der Initialisierung.

Eben, die könnte aber schon per Hardware erfolgen. Ist aber nicht so.

@ Igor Metwet (bastel-wastel)

>Hoffe ich hab mich nicht zu unverständlich ausgedrückt.

Hast du aber. Und Unsinn ist es ausserdem. ;-)

>Beim RAM sollte man halt beim Arbeiten mit Pointern im Hinterkopf haben,
>dass das RAM beim Reset nicht gelöscht wird und der RAM nicht leer ist.

Hat mit Pointern nix zu tun.

MFg
Falk
#979082
Wenn man mit Pointern auf eine Speicherstelle zugreift, dann kommt da 
der Wert raus, der da drin steht und der Wert ist nach einem Reset auch 
noch drin.

>>Hoffe ich hab mich nicht zu unverständlich ausgedrückt.

>Hast du aber. Und Unsinn ist es ausserdem. ;-)

Inwiefern? So unverständlich kann es nicht gewesen sein, wenn du es als 
Unsinn bezeichnest.
Laut deiner Beschreibung sind Register der Peripherie nach einem Reset 
noch beschrieben. Also kann Blödsinn rauskommen, wenn nur einzelne Bits 
gesetzt werden.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 18 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.