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¾
==========================================
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-Tutorial#Vereinfachung_f.C3.BCr_Zeichenketten_.28Strings.29_im_Flash)
P.S. Wenn ich die BAUD geschwindichkeit verkleinere werden auch weniger zeichen angezeigt.
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 :-(
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
Flash 1674 Bytes und RAM 1 Byte
Gast
#1956090
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ß
Gast
#1956095
Du hast ein recht kreatives while(false) in der main loop...
wie kann ich nachsehen ob der Watchdog Reset macht? :-(
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...
Gast
#1965787
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.
... 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 :-)
Gast
#1965825
Weis ich bescheid! :-) Danke!
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.