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> C Quellcode formatieren: <code>Quellcode</code> BASIC Quellcode formatieren: <basic>Quellcode</basic> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! -> I > > > > > > > > > > > > Hallo, > > > > > > > > > > > > > > > > > > > > > > > > ich habe eine Frage zur Ansteuerung von Ausgängen (Relais) mit der C-Control. Ich habe das C-Control > > > > > > > > > > > > Pro 128 Projektboard und möchte verschiedene Relais ansteuern. Die Ansteuerung erfolgt über die > > > > > > > > > > > > RS232-Schnittstelle was auch einwandfrei funktioniert. Hier mal eine Kurzer auszug aus dem Programm: > > > > > > > > > > > > > > > > > > > > > > > > If Command = 1 Then > > > > > > > > > > > > Command = 0 > > > > > > > > > > > > Port_WriteBit(Relais1,1) > > > > > > > > > > > > Port_WriteBit(Relais2,1) > > > > > > > > > > > > Port_WriteBit(Relais3,1) > > > > > > > > > > > > Port_WriteBit(Relais4,1) > > > > > > > > > > > > Port_WriteBit(Relais7,1) > > > > > > > > > > > > Port_WriteBit(Relais8,1) > > > > > > > > > > > > Port_WriteBit(Relais13,1) > > > > > > > > > > > > Port_WriteBit(Relais14,1) > > > > > > > > > > > > Port_WriteBit(Relais19,1) > > > > > > > > > > > > Port_WriteBit(Relais20,1) > > > > > > > > > > > > AbsDelay(10000) > > > > > > > > > > > > Else > > > > > > > > > > > > Port_WriteBit(Relais1,0) > > > > > > > > > > > > Port_WriteBit(Relais2,0) > > > > > > > > > > > > Port_WriteBit(Relais3,0) > > > > > > > > > > > > Port_WriteBit(Relais4,0) > > > > > > > > > > > > Port_WriteBit(Relais7,0) > > > > > > > > > > > > Port_WriteBit(Relais8,0) > > > > > > > > > > > > Port_WriteBit(Relais13,0) > > > > > > > > > > > > Port_WriteBit(Relais14,0) > > > > > > > > > > > > Port_WriteBit(Relais19,0) > > > > > > > > > > > > Port_WriteBit(Relais20,0) > > > > > > > > > > > > > > > > > > > > > > > > End If > > > > > > > > > > > > > > > > > > > > > > > > Jetzt zu meiner Frage: Aktuell sende ich über die RS232 das Signal 1 und die ausgewählten Relais > > > > > > > > > > > > ziehen für die AbsDelay-Zeit an. Ich möchte aber das die Relais angezogen bleiben (ohne AbsDelay-Zeit) > > > > > > > > > > > > und erst wieder ausschalten wenn ich z.B. eine 2 über die RS232-Schnittstelle sende. > > > > > > > > > > > > > > > > > > > > > > > > Kann mir jemand helfen? Ich bin am verzweifeln. > > > > > > > > > > > > > > > > > > > > > > > > Gruß Sascha > > > > > > > > > > > > > > > > > > > > > > die Ports bleiben so lange an, bis du sie wieder ausschaltest, > > > > > > > > > > > > > > > > > > > > > > das heißt du empfängst z.B die 1, schaltest alle relaise ann > > > > > > > > > > > und bei der 2 wieder aus > > > > > > > > > > > > > > > > > > > > Ja so soll es sein. Bekomme es aber nicht hin. Immer wenn ich die AbsDelay-Zeit entferne > > > > > > > > > > schalten die Relais gar nicht mehr. > > > > > > > > > > > > > > > > > > ist klar, wenn du sie nach der pause wieder ausschaltest..... > > > > > > > > > > > > > > > > > > du must ein e Zahl von der S-Schnittstelle einlesen, > > > > > > > > > dann überprüfen, ob die zahl 1 ist, dann relaise 1 einschalten, wenn die Zahl 2 ist Relaise 2 einschalten > > > > > > > > > und so weiter. Bei null dann wieder alle aus.... > > > > > > > > > > > > > > > > > > > > > Hallo > > > > > > > Ist die letzte geschweifte Klammer nicht verkehrt herum. > > > > > > > > > > > > ok, dann versuch mal dieses... > > > > > > > > > > Hallo, > > > > > ich weis nicht, ob ihm ein C-Programm weiterhilft, denn offensichtlich programmiert Sascha ja in > > > > > BASIC. > > > > > Dein Problem ist, dass Du das Ausschalten in den else-Zweig gelegt hast, beim Einschalten aber > > > > > die Variable Command gleich auf 0 setzt. Beim nächsten Durchlauf deiner Hauptschleife wird daher > > > > > sofort der else-Zweig durchlaufen, und du schaltest die Relais wieder ab. > > > > > Entweder darfst Du 'Command' erst auf 0 setzen, wenn Du die Relais wirklich abschalten willst, > > > >> oder > > > > > Du musst das Ein- bzw. Ausschalten in eigene If-Abfragen legen. z.B. Ausschalten mit > > > > > if Command=2 Then ... > > > > > Gruß > > > > > Franz-Peter > > > > > > > > mein programm war ja auch eher als ansatz oder beispiel gedacht.... hat es denn wenigstens > > > funktioniert?? > > > > wollt ir das Programm nochmal in Basic?? > > Hallo, > wäre nicht schlecht da ich irgendwie immer wieder auf neue Probleme stoße. >