mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Programm läuft in schleife?


Autor: Viktor Tschetwerik (viktort)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich möchte gerne ein gerät ansteuern mit hilfe eines µC Atmega8, wo ich 
den Schaltzustand abfragen kann, dafür wolte ich eine kleines menü am 
anfang anzeigen.

Ich habe ein beispiel programm von myAVR gefunden, siehe Anhang.

Doch bei dem versuch das menü anzuzeigen, bricht er nach einer gewiesen 
zeit ab und fängt von vorna an anzuzeigen. siehe Unten.
Warum?


==========================================
                                          Faseroptischesschaltmodul
                                                                   Viktor 
Tschetwerik------------------------------------------
                                                Kommandos: zwe£
                                                               ==========================================
                         Faseroptischesschaltmodul
                                                  Viktor 
Tschetwerik------------------------------------------
                               Kommandos: zwe¾
                                              ==========================================
        Faseroptischesschaltmodul
                                 Viktor 
Tschetwerik------------------------------------------
              Kommandos: zwe¾
                             ==========================================

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Crasht das Programm auch, wenn du deutlich kürzere Strings benutzt oder 
wenn du die Strings nur im Flash hälst? 
(http://www.mikrocontroller.net/articles/AVR-GCC-Tu...)

Autor: Viktor Tschetwerik (viktort)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
P.S.

Wenn ich die BAUD geschwindichkeit verkleinere werden auch weniger 
zeichen angezeigt.

Autor: Viktor Tschetwerik (viktort)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich ahbe auch Kürzere Strings versucht, das selbe spiel.

wie kann ich sie im Flash halten? tut mir leid für die dumme frage :-(

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Viktor Tschetwerik schrieb:
> Ich ahbe auch Kürzere Strings versucht, das selbe spiel.

Wieviel kürzer?

Was sagst die Speicherstatistik am Ende des Compilier/Link Vorgangs?

> wie kann ich sie im Flash halten? tut mir leid für die dumme frage :-(

Siehe AVR-GCC-Tutorial

Autor: Viktor Tschetwerik (viktort)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Flash 1674 Bytes
und RAM 1 Byte

Autor: Klaus B. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Viktor Tschetwerik schrieb:
> Doch bei dem versuch das menü anzuzeigen, bricht er nach einer gewiesen
> zeit ab und fängt von vorna an anzuzeigen. siehe Unten.
> Warum?

Hallo,

wenn die Zeit, nachdem dein Programm  abbricht, konstant erscheint, 
würde ich einmal nachsehen, ob du möglicherweise einen Watchdog-Reset 
o.ä.  bekommst ...

Gruß

Autor: ozo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast ein recht kreatives while(false) in der main loop...

Autor: Viktor Tschetwerik (viktort)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wie kann ich nachsehen ob  der Watchdog Reset macht? :-(

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Viktor Tschetwerik schrieb:
> wie kann ich nachsehen ob  der Watchdog Reset macht? :-(
Hast du das Datenblatt schon mal angesehen, oder sollen das Andere für 
dich lesen?

Oder die Sache mit Google:
http://lmgtfy.com/?q=atmega8+watchdog+reset+flag

Und dann findest du schnell (3. Link) heraus, dass es ein WDRF in einem 
MCUCSR gibt...

Autor: Viktor T. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Es geht auch viel einfacher bei manchen, man schaltet einfach über die 
High Fuse Bits den Watchdog aus.

*Vielen dank noch mal an alle die mir weiter geholfen haben.*

Und wegen der while schleife sie sollte (true) sein hab bei der Fehler 
suche vergessen wider rein zuschreiben.

Und der fehler das er mir versetzt angezeigt hat, muste ich (\n \r) 
eingeben anstat nur (\n)

mfg
Viktor T.

Autor: Klaus Wachtler (mfgkw)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... und beim nächsten Mal einen C-Quelltext vielleicht
als .c einfügen, dann kann man ihn auch schöner lesen.
(Dagegen ist .txt nur sinnvoll bei Quelltexten für den
TXT-Compiler :-)

Autor: Viktor T. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Weis ich bescheid! :-)
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.