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

Zykluszeiten einhalten Kategorie: CAN-Bus (von Tobias - 28.01.2009 14:40)
Ich nutze:
C-Control II Unit, CC2-Application-Board, OSOPT V3.1
Hallo,
habe eine Frage zum Zyklischen Senden über CAN. Ich muss eine Zykluszeit von ca. 20ms einhalten,
weil die Botschaft von einem Gateway geroutet wird. Nur wei�? ich nicht, wie ich diese einhalten kann,
weil das Senden zwischen 3-6ms dauert, auch manchmal über 10 ms und ich so keine Wartezeit mit
sleep generieren kann. Vielen Dank schonmal im Vorraus für eure Hilfe.

Gru�? Tobias

hier noch ein Testprogramm mit statischen Werten, das eine Durchlaufzeit von 3-5ms hat. Oder mach
ich da einen grundlegenden Fehler?

//Globale Variablen
byte v[7];
int bz;


thread senden
{
    if can.ready(1)
    {
       can.send(1, 0x100, v, 8);
       sleep 16;
    }
}


thread main
{
   can.init(4, 0x07FF, 0x0000);
   lcdext.init();
   
   while 1
   {
         lcdext.zahl(bz);
         lcdext.clear();
         v[1]=bz;
         v[4]=0x20;
         v[5]=0x4e;
         bz=bz +1;
         if bz > 15 bz=0;
         run senden;
   }
}


    Antwort schreiben


Antworten:

Re: Zykluszeiten einhalten (von reneforster - 28.01.2009 19:16)
    Re: Zykluszeiten einhalten (von Tobias - 29.01.2009 11:07)