mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik interner reset??


Autor: KP (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo zusammen,

meiner einer würde gerne bei einem atmega 162 einen internen reset 
durchführen. leider habe ich bei den tutorials immer nur gelesen, wie 
das mit dem watchdog funktioniert.

gibt es da nicht deinen befehl, bzw. befehlskette, um einen internen 
reset des uC auszulösen? das programm, das ich schreibe, ist in C 
programmiert.

vielleicht habt ihr ja einen tipp für mich.

merci und noch einen schönen tag!

grüße KP

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ KP

>meiner einer würde gerne bei einem atmega 162 einen internen reset
>durchführen. leider habe ich bei den tutorials immer nur gelesen, wie
>das mit dem watchdog funktioniert.

Ja und? Was ist daran nicht gut? Es gibt keine weitere Möglichkleit 
einen Software-Reset auszuführen. (Ok, man könnte ein IO Pin opfern und 
damit den Reset-Pin des uC schalten).

MFG
Falk


Autor: Frank (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hüpf doch einfach auf den Reset-Vektor.

bye

Frank

Autor: D. W. (dave) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was soll dein Reset machen? Die Hardware in den Ursprungszustand 
versetzen oder nur die Software von vorne abspielen? Letzteres geht 
durch einen Sprung zu 0. Für das andre brauchst du den WDT oder einen 
Reset-Pin-Wackel.

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
KP wrote:
> hallo zusammen,
>
> meiner einer würde gerne bei einem atmega 162 einen internen reset
> durchführen. leider habe ich bei den tutorials immer nur gelesen, wie
> das mit dem watchdog funktioniert.

Gute Lösung, warum nutzt Du sie nicht?

>
> gibt es da nicht deinen befehl, bzw. befehlskette, um einen internen
> reset des uC auszulösen? das programm, das ich schreibe, ist in C
> programmiert.

Alle Befehle, die Dein AVR versteht, sind im Datasheet aufgelistet. Ein 
Reset-Befehl ist mir nicht bekannt.

Einen Hardware-Reset kann man nur per Hardware auslösen. Eine gute 
Möglichkeit, aus dem Programm ein Reset auszulösen, ist die, den 
Watchdog dazu zu bringen, dass er anspricht und den Reset auslöst. Du 
kannst auch einen Pin mit dem Reset-Pin verbinden und diesen auf L 
setzen, wenn Reset ausgelöst werden soll, aber das ist eigentlich Unfug 
und Verschwendung.

>
> vielleicht habt ihr ja einen tipp für mich.
>
> merci und noch einen schönen tag!
>
> grüße KP

Frohen Rest vom Osterfest...

...

Autor: AVRFan (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>meiner einer würde gerne bei einem atmega 162 einen internen reset
>durchführen. leider habe ich bei den tutorials immer nur gelesen, wie
>das mit dem watchdog funktioniert.

Ja. Und? Gefällt Dir an der Watchdoglösung was nicht?

>gibt es da nicht deinen befehl, bzw. befehlskette, um einen internen
>reset des uC auszulösen? das programm, das ich schreibe, ist in C
>programmiert.

Ja, es gibt eine "Befehlskette".  Sie sperrt zunächst alle Interrupts, 
schaltet den Watchdog ein und geht danach in eine Endlosschleife.  Das 
ist in Assembler mit vier Instruktionen erledigt:
Reset:
    cli    

    ldi  r16, 1<<WDE 
    out  WDTCR, r16
    
Endless: 
    rjmp Endless

Hilft Dir das weiter?

Autor: KP (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

das ging ja mal wieder fix!

vielen dank für eure hilfe. habt mir echt geholfen.

auch noch einen schönen feiertag.

grüße KP

Autor: Marco S. (masterof)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Frank wrote:
> hüpf doch einfach auf den Reset-Vektor.

Das ist kein Reset.

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.