Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

CAN Bus Kategorie: CAN-Bus (von alti23 - 13.03.2008 16:33)
Ich nutze:
C-Control II Unit
Hallo zusammen,,

ich habe da mal wieder ne Frage:

ich möchte einen der CAN-Kanäle sozusagen bidirektional benutzen, d.h. auf diesem Kanal
sowohl Senden als auch Empfangen. Wenn ich die Schnittstelle initialisieren und dann einen Wert
auf den CanBus schreibe und im Anschluss mit "expect" auf eine Nachricht warte, funktioniert alles
einwandfrei. Ich hole die Nachricht mit get ab ... alles i.O.
Wenn ich dann aber mit diesen Kanal auf "ready" ĂĽberprĂĽfe, um wieder eine Nachricht zu schreiben,
bleibt mein Programm an dieser Stelle stehen, weil "ready" immer eine "0" liefert. Warum?

AuszĂĽge aus meinem Code

thread main
{
can.init(can.SPEED_125,0x03FF,0x0000);
 loop
 {
   wait can.ready(0);
   can.send(0, ...);
   can.expect(0,100);
   wait can.rxd(0);
   var = can.get(0, ...);  
 }
}

Wird die Loop-Schleife zum 2.Mal durchlaufen, bleibt sie bei wait can.ready(0) stehen.
Nehme ich die can.init-Zeile als 1.Zeile mit in die Loop-schleife funktioniert alles einwandfrei.
Find ich aber persönlich nich so schön, bei jedem Schleifendurchlauf die Can-Schnittstelle neu
zu initialisieren.

MfG


    Antwort schreiben


Antworten:

Re: CAN Bus (von TManiac - 13.03.2008 20:16)
    Re: CAN Bus (von TManiac - 13.03.2008 20:18)
        Re: CAN Bus (von alti23 - 16.03.2008 15:25)
            Re: CAN Bus (von TManiac - 16.03.2008 19:24)
                Re: CAN Bus (von alti23 - 19.03.2008 17:24)
                    Re: CAN Bus (von TManiac - 20.03.2008 13:43)