CAN : Ich versteh was nicht? Kategorie: CAN-Bus (von Wolfgang - 29.10.2001 22:31) | |
| |
Hi an alle! 2 Units ich schicke auf kanal 0 die uhrzeit kanal 1 Volt kanal 2 Ampere wenn ich nur die Uhrzeit abfrage funktioniert alles, sobald ich ander kanäle abfrage bekomm ich nur mehr Chaos! Init Funktion im Main Thread! can.init(can.SPEED_500,0x07FF,0x0000); Funktion : Float Werte senden function sendcanf(byte ch,float f) { byte buffer[7]; long l; if tools.KEY[1] == 0 return; if can.ready(ch) { l = f * 10000; mem.putlong(buffer,0,l); can.send(ch,0x0120,buffer,4); } } Funktion : Uhrzeit senden byte data[7]; function CanSendTime() { if can.ready(0) { data[0]=system.second(); data[1]=system.minute(); data[2]=system.hour(); data[3]=system.day(); data[4]=system.month(); data[5]=system.year()/100; data[6]=system.year() % 100; can.send(0,0x0120,data,7); } } Funktion : Uhrzeit empfangen function ShowCanTime(byte b[]) { string tmp; tmp = ""; str.putintf(tmp, b[2], 2); str.putchar(tmp,':'); str.putintf(tmp, b[1], 2); str.putchar(tmp,':'); str.putintf(tmp, b[0], 2); tools.msg2s(0,8,tmp); /*tmp=""; str.putintf(tmp, b[3], 2); str.putchar(tmp,'.'); str.putintf(tmp, b[4], 2); tools.msg2s(0,11,tmp); tools.msg2i(1,12,"",b[5]*100+b[6],4,""); */ } test Thread : byte buf[7],max; thread CANREADER { float tmp; byte ch; buf=0; ch=0; can.expect(ch,0x0120); if can.rxd(ch) { can.get(ch,buf); system.settime(buf[2],buf[1],buf[0]); system.setdate(buf[5]*100+buf[6],buf[4],buf[3]); ShowCanTime(buf); } ch=1; can.expect(ch,0x0120); if can.rxd(ch) { tmp=0; max=can.get(ch,buf); tools.msg2i(0,12,"#1:",max,1,""); tmp=mem.getlong(buf,0); tools.msg2f(1,0,"",tmp/10000,6,3,"V"); } ch=2; can.expect(ch,0x0120); if can.rxd(ch) { tmp=0; can.get(ch,buf); tmp=mem.getlong(buf,0); tools.msg2f(1,9,"",tmp/10000,6,3,"A"); } } Erklärung für meine tools.msg2f Funktion msg2f(zeile,spalte,string 1,float value,länge,kommas,string 2) Ich hoffe auf Hilfe mfg Wolfgang | |
Antwort schreiben Antworten: Re: CAN : Ich versteh was nicht? (von Cris - 30.10.2001 15:07) Re: CAN : Ich versteh was nicht? (von Wolfgang - 30.10.2001 23:43) Re: CAN : Ich versteh was nicht? (von Cris - 31.10.2001 1:02) Re: CAN : Ich versteh was nicht? (von Wolfgang - 31.10.2001 18:30) |