Hallo, ich tüftle gerade an einem Problem: Ich habe einen Prozessor auf dem ein XCP Slave Treiber läuft. (XCP ist ein Protokoll aus dem Automotive Bereich und kann als Erweiterung zu CCP angesehn werden, dass allerdings verschiedene Transportlayer als nur CAN unterstützt. Es wird unter anderem zum Auslesen und Parametrieren von Steuergeräten benutzt). Die Software auf meinem Board steuer verschiedene Ausgänge, zB ein Display oder PWM Kanäle. Ein XCP Master (zB ein PC mit CANape) kann verschiedene Variablen der uC Software verändern und dadurch zB die PWM beeinflussen. Ich würde gerne das System sicherer machen indem ich versuche festzustellen, ob der Master überhaupt noch sendet, bzw ob er hängt. Also eine Art Timeouterkennung, um die Applikation in einen definierten Ruhemodus zu fahren. Wer XCP kennt weiß, dass Werte die in den uC geschrieben werden direkt an eine Adresse im RAM geschrieben werden. Das heißt, meine Applikation hat erstmal keine Möglichkeit festzustellen, wann die letzte Übertragung stattgefunden hat. Außerdem schickt ein XCP Master seine Parameter nicht zyklisch, sondern nur bei Änderungen oder bestimmten Events. Den Treiber selbst würde ich nur ungern "aufbohren", da dieser nicht von mir stammt und eigentlich als Blackbox betrachtet werden kann/soll. Ich könnte den Master zyklisch senden lassen. Aber ändert sich der Wert nicht, hat meine Applikation wieder keine Möglichkeit, einen Timeout des Masters festzustellen. Hat hier jemand eine elegante Möglichkeit? Weis jemand weiter? Danke & Viele Grüße, der c-ler
c-ler schrieb: > Hat hier jemand eine elegante Möglichkeit? Weis jemand weiter? Dann hast du nur noch eine Chance: Dein Master muss regelmässig 'Still Alive' Nachrichten versenden. > Ich könnte den Master zyklisch senden lassen. Aber ändert sich der Wert > nicht, Dann musst du eben dafür sorgen, dass sich 'der Wert' ändert. Und wenn es nur eine bestimmte, sonst unbenutzte Variable ist, die vom Master alle 2 Sekunden von 0 auf 1 und 2 Sekunden später wieder zurück geändert wird.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.