artikel:w-bus:fehlererkennung_und_behandlung

Fehlererkennung und Behandlung

  • Der XOR aller Nutzdaten-Bytes der Nachricht muss dem Wert seines Prüfsummen-Bytes entsprechen (Checksum-Error).
  • Das gesamte Datagramm muss mindestens 4 und maximal 257 Byte lang sein (Frame-Len Error)
  • Aufgrund der Eindrahtbusses sind Sende- und Empfangsteil intern miteinander verbunden. Jeder Sender muss bitweise zurücklesen was er sendet und im Fehlerfall die Sendung abbrechen. Wenn der Master erkennt, dass er nicht senden kann, muss er seiner Anwendungsschicht einen „Physical-Bus-Error“ melden.
  • Liegt vor dem eigenen Kommunikationsstart eine 0 auf dem Bus, so darf man nicht senden (Dominant=Bus belegt). Hält dieser Zustand länger an (W-Bus verwendet kein NRZ, daher ist die maximale 0-Zeit die eines 0x00 Datenbytes) stimmt was am Bus nicht (Kurzschluss gegen Masse, fehlender Pull-Up, kein Anschluß zum Bus, Treiber defekt).
  • Für ausbleibende Antworten muss beim Master ein „No-Response-Error“ ausgelöst werden.
  • Als fehlerhaft erkannte Botschaften werden verworfen.
  • Fehlerereignisse werden lokal registriert. Eine Fehlersignalisierung ist nicht Teil des Protokolls, sondern muss bei Bedarf in der Anwendungsschicht definiert werden.
  • artikel/w-bus/fehlererkennung_und_behandlung.txt
  • Zuletzt geändert: Mon. 17.02.2020 19:18
  • von go4it