- Labornetzteil AliExpress         
Ergebnis 1 bis 10 von 11

Thema: Problem mit Bitfeld Array

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    13.01.2014
    Beiträge
    454
    Blog-Einträge
    3
    Code:
    static struct {
        unsigned char gemaeht:3;
        unsigned char temp_besetzt:4;
        unsigned char fixbesetzt:1;
     } Karte[grund_x+1][grund_y+1];
    Warum grund_x+1 bzw. grund_y+1 statt grund_x bzw. grund_y?

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.08.2008
    Ort
    Graz
    Beiträge
    521
    Angstbytes damit das Array sicher groß genug ist.
    LG!
    alles über meinen Rasenmäherroboter (wer Tippfehler findet darf sie gedanklich ausbessern, nur für besonders kreative Fehler behalte ich mir ein Copyright vor.)

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.08.2008
    Ort
    DE
    Beiträge
    523
    Also Karte_temp_schreiben sollte korrekt funktionieren. Gab bei mir keine Probleme. Und wenn du die 4 Bits voll ausnutzen möchtest, dann dürfen da Werte <= 15 drin stehen.

    mfg

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Karlsruhe
    Alter
    37
    Beiträge
    1.225
    Wenn du sagst, dass ganze Spalten (mehrere X=const, Y=variabel Koordinaten) betroffen sind, spricht das eigentlich für einen Fehler außerhalb. Läuft dein Code auch ohne angeschlossene Hardware (oder alternativ: Hast du Zugang zu einem Hardware-Debugger? Dann würde ich dir nämlich raten, einfach Mal dem AVR beim Rechnen zuzusehen und zu beobachten wann die betreffenden Speicherbereiche beschädigt werden.

    Alternativ könntest du versuchen, Routinen zur Speicher-Validierung umzusetzen (dir z.Bsp. einige Zellen mit bekanntem Inhalt auswählen, deren Inhalt vor/nach jeder Manipulation prüfen und sobald eine Abweichung vom Soll auftritt, Alarm schlagen und möglichst detailliert den aktuellen Systemzustand ausgeben).

    mfG
    Markus
    Tiny ASURO Library: Thread und sf.net Seite

  5. #5
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.08.2008
    Ort
    Graz
    Beiträge
    521
    Hm, werde die Funktion wieder aktivieren, rechne aber dass es wieder die Karte zerstören wird. Ohne Karte_temp_schreiben waren die Werte stabil, dh die blockierten Felder waren immer sichtbar.
    Überlege was ich zur Speicher Validierung umsetzen kann, vielleicht ein paar fixe Positionen mit Karte_temp_schreiben beschreiben, um zu sehen wie lange oder bei welchen Positionen die Karte fehlerhaft wird.

    LG!
    alles über meinen Rasenmäherroboter (wer Tippfehler findet darf sie gedanklich ausbessern, nur für besonders kreative Fehler behalte ich mir ein Copyright vor.)

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    20.08.2008
    Ort
    Karlsruhe
    Alter
    37
    Beiträge
    1.225
    Zitat Zitat von damfino Beitrag anzeigen
    um zu sehen wie lange oder bei welchen Positionen die Karte fehlerhaft wird.
    Und vor allem: Ausgelöst durch welche Funktionsaufrufe? Mit welchen Parametern? Welche Werte standen vorher an den entsprechenden Positionen? Du brauchst mehr Informationen damit du weg vom reinen Rätselraten kommst.

    mfG
    Markus
    Tiny ASURO Library: Thread und sf.net Seite

Ähnliche Themen

  1. Problem mit gets(array-variable) in C
    Von pete1612 im Forum Software, Algorithmen und KI
    Antworten: 5
    Letzter Beitrag: 10.04.2012, 21:07
  2. Problem mit Array
    Von The Man im Forum C - Programmierung (GCC u.a.)
    Antworten: 7
    Letzter Beitrag: 31.01.2009, 17:39
  3. Problem mit globalen Array [gelöst]
    Von OnkelTobi im Forum C - Programmierung (GCC u.a.)
    Antworten: 0
    Letzter Beitrag: 25.11.2006, 15:04
  4. n-Damen-Problem lösen mit dynamischem mehrdim. Array
    Von n0Br4iN3r im Forum C - Programmierung (GCC u.a.)
    Antworten: 6
    Letzter Beitrag: 23.09.2005, 12:19
  5. Problem mit Array und Ports
    Von pensoffsky im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 14.08.2005, 20:00

Berechtigungen

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

12V Akku bauen