-         

Ergebnis 1 bis 5 von 5

Thema: Programm stürzt abundzu ab.

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.03.2006
    Beiträge
    360

    Programm stürzt abundzu ab.

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Hab eine Haussteuerung mit Touchdisplay im Einsatz die immer wieder mal erweitert wird. Das ganze ist jetzt schon recht umfangreich mit viel Code drum macht es auch wenig Sinn den hier jetzt zu posten.

    Abundzu friert mit beim bedienen des Menüs mal alles ein und nichts geht mehr. Der Watchdog löst dann aus und alles startet neu.

    Wie kann ich den Fehler ausfindig machen? Was sind die heufigsten Ursachen? Endloschschleifen scheint es keine zu geben. Ich hab ne Menge Variablen im Einsatz. Kann es sein, dass da ein Speicher überläuft?

    Wie wähle ich $framesize, $hwstack, $swstack richtig? Fragen über Fragen

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    35
    Beiträge
    1.987
    Ob ein Speicher überläuft oder ob nicht doch irgendwo Endlosschleifen auftauchen kann man nur sagen, wenn man den Code sieht.
    Und ich behaupt jetzt einfach mal: Es gibt mindestens 1 Endlosschleife.
    #ifndef MfG
    #define MfG

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    26.03.2006
    Beiträge
    360
    Ich habe $framesize, $hwstack und $swstack mal vergrössert und hatte bisher keinen Absturz. mal sehen ob das nur Zufall war oder es wirklich daran lag.

    Endlosschleifen kann ich mit hoher Wahrscheinlichkeit ausschließen. Das ganze ist nur mit GOSUB verlinkt, sollte also dadurch in keine Endlosschleife kommen. GOSUB gibt es aber reichlich, vielleicht war das der Grund.

  4. #4
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    18.05.2007
    Ort
    Berlin
    Alter
    46
    Beiträge
    765
    Ich gehe auch davon aus, dass eine Endlosschleife (Hauptschleife) existiert.
    Wenn die Subs (Gosub) ineinander verschachtelt sind, brauchst Du mr HWStack. Subs (Declare...) benötigen mehr SW Stack, genau wie Funktionen.
    Wieviel davon, kommt darauf an, wie kaskadiert das Programm ist.

    Ich erhöhe den Stapelspeicher immer bis zum Limit. Wieviel noch frei ist, zeigt dir der Bericht (STRG+W) nach dem Kompilieren.
    Wenn das Herz involviert ist, steht die Logik außen vor! \/

  5. #5
    Erfahrener Benutzer Robotik Einstein Avatar von Jaecko
    Registriert seit
    16.10.2006
    Ort
    Lkr. Rottal/Inn
    Alter
    35
    Beiträge
    1.987
    Ich meine, dass da mal irgendwo was stand von wegen jede Sub/Gosub/Function braucht 2 Byte, jeder Parameter ebenfalls.
    Also kann man so schon mal grob nachrechnen, in welcher Hausnummer man sich da bewegt.
    #ifndef MfG
    #define MfG

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •