Hallo Zusammen,
ich habe mal wieder ein Problem mit CAN.
Als CAN-Hardware benutze ich eine NI PCMCIA-CAN/2 Karte über eine PCMCIA-Karte in einem Desktop-PC. Es ist gerade keine "richtige" NI-CAN Karte vorhanden.
Restlicher PC:
CPU & Grafikkarte: I7-2600k
OS: WIN-XP
Mainboard hab ich gerade nicht mehr im Kopf
Folgendes Problem:
Als API benutze ich die Channel-API.
Ich muss aus Gründen der Steuerung verschiedene Botschaften in einem unterschiedlichen Zeitabstand senden, d.h. z.B. ein Botschaft alle 12ms und eine andere bei 100ms. Dazu werden die Botschaften mit einzelnen Tasks initialisiert.
Jetzt habe ich für CAN 1 einen Readtask und 4 Writetasks. Für CAN 2 einen Readtask und 2 Writetasks. Also Insgesamt 8 Tasks. Das sollte hoffentlich nicht zuviel sein für die kleine Karte. (Wieviele sind eigentlich Möglich
Nach einer Weile erhalte ich die Fehlermeldung 0xBFF62048 (‐107438892). Nachzulesen hier:
NI-CAN Fehlercodes
Die Readtasks werden beide alle 10ms nacheinander ausgeführt. Die Writetasks laufen in mehreren parallelen Schleifen ab. Das Programm funktioniert auch eine ganze Weile.
Es ist mir irgendwie schleierhaft warum es zu einem Fehler kommt wenn über längere Zeit direkt nacheinander Frames empfangen werden. Heißt das mein CAN ist Blockiert, weil er nichts mehr schreiben darf?
Ich habe mal meine beiden CAN-Subvi's angehängt die ich mehrfach im Programm aufrufe. Jeweils mit mit einer Variable die sagt welcher Teil ausgeführt wird und welchen Task er benutzen soll.
Gruß,
DrRino