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

Wichtig: Bevor Du wegen einem Problem mit der CC2 postest, stelle sicher, daß Du
die neueste OS-Version, die neuseste Compiler-DLL und die neuesten Modulversionen benutzt!
Beachte, daß sich auf der CD zur CC2-Unit/Station auch jetzt noch die ältesten Dateien befinden!
Es gelten folgende Anleitung und Regeln: Regeln CC2Net.de-Forum
Zurück zum Artikel  (Blaue Felder sind Pflichtfelder)


Name:   UserID: 
 E-Mail:
Kategorie
Betreff
Homepage:
Link-Titel:
Link-URL:
Cookie für Name, UserID, E-Mail, Homepage-URL setzen
(Erspart die Neueingabe bei Beiträgen und Antworten)
(Zum Löschen des Cookies hier klicken)
Ich nutze:
C-Control II Unit
C164CI-Controllerboard
C-Control II Station
CCRP5 mit CC2-Unit (Conrad Roboter)
CC2-Application-Board
CC2-StarterBoard
CC2-ReglerBoard
eigenes Board
original OS     OSOPT_V2     OSOPT V3.0 OSOPT V3.1

Kommentar:
Einfügen von HTML im Kommentar:

Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a>
Bild einfügen: <img src="BILDURL">
Text formatieren: <b>fetter Text</b>  <i>kursiver Text</i> <u>unterstrichener Text</u>
Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b>
C2 Quellcode formatieren: <code>Quellcode</code>
ASM Quellcode formatieren: <asm>Quellcode</asm>
(Innerhalb eines Quellcodeabschnitts ist kein html möglich.)
Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst !  

> Ausgangslage: > > Mehrere Geräte senden über CAN, es sollen mehr als 15 ID's verwertet werden. > > Gruppen: 0x300-0x307, 0x0C0-0x0C4, 0x0D0-0x0D8 z.B. > > also kann nicht jeder ID ein exklusiver Kanal zugeordnet werden. Wenn ich exklusiv jedem Kanal > einzeln zuordne, funktioniert alles tiptop (Alle LED's blinken unisono). (Sendefrequenz: 1Sek, Zeit zwischen zwei ID's: 4ms) > > mit > > <code> > can.init(4,0x7FF,0x000); > > thread test > { > byte temp[8]; > can.expect(0,0x305); // Erwarte auf Kanal 0, > can.expect(1,0x307); // Erwarte auf Kanal 1 > can.expect(2,0x300); // Inv Power > can.expect(3,0x301); // Grid Power > can.expect(4,0x304); // Frequency > > loop > { > if can.rxd(0) > { can.get(0,temp); stports.togLED(0x01); } > if can.rxd(1) > { can.get(1,temp); stports.togLED(0x02); } > if can.rxd(2) > { can.get(2,temp); stports.togLED(0x03); } > if can.rxd(3) > { can.get(3,temp); stports.togLED(0x04); } > if can.rxd(4) > { can.get(4,temp); stports.togLED(0x05); > } > } > } > > </code> > > Wenn ich nun versuche, mehrere in einem Kanal zuzuweisen, um Kanäle zu sparen, dann blinken nicht > mehr alle Unisono - es gehen Frames verloren.: > > <code> > > can.init(4,0x7F8,0x000); //Letzte 8 Bites egal. Somit 0x300-0x307 im selben Postfach > thread test2 > { > byte temp[8]; > int adress; > can.expect(0,0x305); // Erwarte auf Kanal 0, letzten 8 Bites egal, da Global Mask entsprechend. > > loop > { > wait can.rxd(0); //Neue Daten? > { adress=can.getID(0); //Welche Adresse? > can.get(0,temp); //Daten auslesen, Eingangskanal leeren > if adress==0x300 > stports.togLED(0x01); > if adress==0x301 > stports.togLED(0x02); > if adress==0x304 > stports.togLED(0x03); > if adress==0x305 > stports.togLED(0x04); > if adress==0x307 > stports.togLED(0x05); > > }//if zu > > }//Loop zu > } > </code> > > Ist was ich erreichen will nicht möglich? Oder gibt es einen besseren Ansatz? > > Danke für eure Hilfe! > > Mike > > > >
Dateianhang: (.gif, .png., .jpg, .zip, .rar)
max. 256kB
max. 256kB