mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik software reset


Autor: Winfried Alex (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Einen guten Abend an Alle!

Hat jemand von euch einen Tip, wie ich einen Software Reset in C 
hinbekomme?
Ich möchte nach einem wake-up die Software neu starten. Normalerweise 
geht es nach einem wake-up dort weiter, wo es vor dem power-down 
aufgehört hat. In diesem Fall soll die Software aber ganz neu gestartet 
werden mit allen Initialisierungen usw.
Hat jemand einen Tip für mich?

Danke für eure Hilfe.
Gruß Winfried.

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
gibt mehrere Möglichkeiten.
1. (geht immer) den internen watchdog starten und das Programm in eine 
Endlosschleife schicken, nach einer gewissen Zeit beißt der Hund und du 
hast deinen deinen Reset.
2. einen Portpin mit Reset verbinden und diesen auf low setzen
3. alle Initialisierungen per Software dazuschreiben und einen Sprung 
nach Adresse 0 programmieren, dürfte nur mit asm gehen
#asm
 rjmp 0
#endasm

Autor: Uwe Arends (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Winfried,

wie in der CodeVision NG schon gesagt:
#asm
jmp 0
#endasm

Dies gewährleistet zumindest, das der Startup-Code des C-Programms 
durchlaufen wird. Registerinhalte, die davon nicht bearbeitet werden, 
sind natürlich nicht oder nur zufällig auf "Reset"-Stand.

hth
-uwe

Autor: crazy horse (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ne ne, ganz so einfach geht das nicht, es sei denn, alle SFR werden in 
der startup initialisiert (glaube ich nicht, müßte man mal nachesehen).
Aber man hat ja die Möglichkeit, eine eigene startup einzubinden.

Autor: Uwe Arends (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
siehe hinweis im Nachsatz, implizit steckt da die initialisierung der 
SFR drin

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.