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

Datenübertragung zwischen einer Unit und einer Station Kategorie: CAN-Bus (von alexander - 9.03.2005 20:28)
Ich nutze:
C-Control II Unit, C-Control II Station, CC2-Application-Board, OSOPT V3.0
Liebes Forum,
seit ein paar Tagen versuche ich vergeblich drei verschiedene Daten über CAN Bus von einer CC2 Unit
zu einer CC2 Station zu übertragen. Ich habe das Forum rauf und runter gelesen - ohne Erfolg. Könntet
ihr euch folgende Zeilen mal durchsehen - vielleicht findet ja einer meinen Wurm und kann mir helfen.
Station (Sender):

int licht;
float gtemp,atemp;
thread cansend
{
byte buffer[7];
byte i;
loop
{
mem.putint(buffer,0,licht);
if can.ready(0)
   {
   can.send(0,0x110,buffer,1);
   }
sleep 200;
mem.putfloat(buffer,0,gtemp);
if can.ready(0)
   {
   can.send(0,0x120,buffer,1);
   }
sleep 200;
mem.putfloat(buffer,0,atemp);
if can.ready(0)
   {
   can.send(0,0x130,buffer,1);
   }
sleep 200;
}
}
//------------------------
thread main
//------------------------
{
string s;
lcdext.init();
lcdext.clear();
can.init(can.SPEED_50,0x0000,0x0000);
hwcom.init();
hwcom.setspeed(6);
run cansend;
loop
{
licht=ports.getfreq(1);
gtemp=((ports.adc(0))-546);
gtemp=gtemp/2;
atemp=47.11;
s="T=";
str.putfloatf(s,gtemp,1);
lcdext.home();
lcdext.zahl(licht);
lcdext.line(2);
lcdext.print(s);
wait ports.get(15);
stports.tog(1);
s="Licht:";
str.putintf(s,licht,5);
hwcom.send(s,str.length(s));
hwcom.put(13);
hwcom.put(10);
licht=0;
s="Garagentemperatur:";
str.putfloatf(s,gtemp,1);
hwcom.send(s,str.length(s));
hwcom.put(13);
hwcom.put(10);
gtemp=0;
s="Aussentemperatur:";
str.putfloatf(s,atemp,1);
hwcom.send(s,str.length(s));
hwcom.put(13);
hwcom.put(10);
atemp=0;
sleep 1000;
}
}

CC2 Unit (Empfänger):

int licht;
float gtemp,atemp;
thread cansend
{
byte buffer[7];
byte i;
loop
{
mem.putint(buffer,0,licht);
if can.ready(0)
   {
   can.send(0,0x110,buffer,1);
   }
sleep 200;
mem.putfloat(buffer,0,gtemp);
if can.ready(0)
   {
   can.send(0,0x120,buffer,1);
   }
sleep 200;
mem.putfloat(buffer,0,atemp);
if can.ready(0)
   {
   can.send(0,0x130,buffer,1);
   }
sleep 200;
}
}
//------------------------
thread main
//------------------------
{
string s;
lcdext.init();
lcdext.clear();
can.init(can.SPEED_50,0x0000,0x0000);
hwcom.init();
hwcom.setspeed(6);
run cansend;
loop
{
licht=ports.getfreq(1);
gtemp=((ports.adc(0))-546);
gtemp=gtemp/2;
atemp=47.11;
s="T=";
str.putfloatf(s,gtemp,1);
lcdext.home();
lcdext.zahl(licht);
lcdext.line(2);
lcdext.print(s);
wait ports.get(15);
stports.tog(1);
s="Licht:";
str.putintf(s,licht,5);
hwcom.send(s,str.length(s));
hwcom.put(13);
hwcom.put(10);
licht=0;
s="Garagentemperatur:";
str.putfloatf(s,gtemp,1);
hwcom.send(s,str.length(s));
hwcom.put(13);
hwcom.put(10);
gtemp=0;
s="Aussentemperatur:";
str.putfloatf(s,atemp,1);
hwcom.send(s,str.length(s));
hwcom.put(13);
hwcom.put(10);
atemp=0;
sleep 1000;
}
}



    Antwort schreiben


Antworten:

Re: Datenübertragung zwischen einer Unit und einer Station (von Cris - 10.03.2005 8:00)
    Re: Datenübertragung zwischen einer Unit und einer Station (von alexander - 11.03.2005 18:35)