Re: Wie fragt man Stellung der Relais (rbports) Kategorie: Programmierung (von Michael - 13.11.2003 21:35) | |
Als Antwort auf Re: Wie fragt man Stellung der Relais (rbports) von André H. - 13.11.2003 0:41
| |
Hallo Andre, danke für Deine Antwort, Dein zweites Beispiel(Bitmuster aller 8 Relais) hat geklappt. Aber bei dem Befehl rbports.get() bekomme ich immer ASCII 0 zurück egal wie die Relais stehen. Würde mich schon interessieren warum. Hier mein teil aus dem Programm, vielleicht siehst Du ja einen Fehler: string txtaus; int i; byte x; byte k; for i = 0 ... 15 { txtaus="R"; str.putint(txtaus,i); txtaus=txtaus + ":" + rbports.get(i); hwcom.print(txtaus); hwcom.ret(); } txtaus="ALLE-R:"; x=rbports.getb(1); for k=0 ... 7 { if x and (1 shl k) txtaus=txtaus + "1"; else txtaus=txtaus + "0"; } hwcom.print(txtaus); hwcom.ret(); Danke für Deine Hilfe. Gru� Michael H. > Hallo Michael, > > > ich steuere mit der CC2 die Relaisplatine SR-Rel8 mit: > > > > rbports.set(relais,0); für ausschalten > > rbports.set(relais,1); für einschalten > > relais = 8 - 15 für Relais 1 bis 8 > > > > doch wie kann ich den aktuellen Stand kontrollieren ? > > Wirklich kontrollieren kann man den Schaltzustand nicht, da man aus den SR > die Daten nicht zurücklesen kann. Es wird lediglich der in einem Bytearray gespeicherte > Schaltzustand zurückgegeben. > > > Ich habe es mit > > > > rbports.get(relais); > > relais = 8 - 15 für Relais 1 bis 8 > > > > bekomme aber immer ein Leerzeichen zurück egal wie das Relais steht. > Also ein Leerzeichen sollte nicht zurückgegeben werden. > Entweder 0 oder 255. > > Schaltzustand = rbports.get(8); > > Du kannst auch das Bitmuster aller 8 Relais anzeigen lassen: > > byte x,i; > ... > loop > { > rblcd.line(1); > x=rbports.getb(1); > for i=0 ... 7 if x and (1 shl i) rblcd.ziff(1); else rblcd.ziff(0); > sleep 100; > } > > > MfG André H. > | |
Antwort schreiben Antworten: Re: Wie fragt man Stellung der Relais (rbports) (von krassos - 14.11.2003 16:33) Re: Wie fragt man Stellung der Relais (rbports) (von Michael - 14.11.2003 23:34) Re: Wie fragt man Stellung der Relais (rbports) (von André H. - 16.11.2003 23:34) |