Für dieses Forum muß Javascript im Browser aktiviert werden!
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 ! > Hallo vielen Dank für die schnelle Antwort, > > ok, wenn ich also bspw. programmiere > > thread stoe_abfr > {wait ports.get (8); > if timer >= 1000 {a=1;} > wait not ports.get (8) > a=0; } > > wie geht das Programm denn dann weiter, wenn der timer noch kleiner 1000 ist. Meiner Ansicht nach > bleibt er beim nächsten wait stehen bis port 8 = 0 ist. > Aber eigentlich sollte der Thread doch in meinem Fall von Vorne beginnen. > > Haddi > > > Hallo, > > > > am elegantesten ist glaube ich folgendes: > > setze ein Flag, wenn der Fehler erstmal auftritt, und starte einen Timer. > > Ein Programmbeispiel dazu hab ich schon früher ins Forum gepostet. > > > > Dann bei jedem Durchlauf prüfst Du, ob der Fehler noch anliegt. > > Wenn ja, prüfst Du, ob der Timer schon 1 Sekunde hinter sich hat. > > Nochmals ja, und der Wert "a" kann gesetzt werden. > > > > Wenn vorher der Fehler verschwindet, wird Flag gelöscht und der Timer gestoppt. > > > > Damit kann man den Task auch für andere Aufgaben benutzen. > > > > Einfacher wäre ein schlichtes Sleep 1000, und eine zweite Abfrage vor dem Setzen von "a". > > Allerdings ist das eher die Holzhammermethode, denn der Task ist 1 Sekunde blockiert. > > > > Martin > > > > > Hallo, > > > > > > das ist bestimmt ein ganz simples Problem, aber > > > ich steh grad auf dem Schlauch und komm nicht weiter. > > > Ich frage mit der CC2-Station eine Maschinenstörung ab. > > > Im folgenden habe ich das mal vereinfacht dargestellt. > > > > > > thread stoe_abfr > > > {wait ports.get (8); > > > a=1; > > > wait not ports.get (8) > > > a=0; } > > > > > > Ich möchte jetzt, dass die Störung (also port(8)) mindestens 1 sec anliegt bevor in dem Beispiel > > > a=1 gesetzt wird. Liegt díe Störung nur kurz an, soll das ganze von vorne beginnen. > > > > > > Ich hoffe mir kann da mal einer von Euch auf die Sprünge helfen. Im Voraus herzlichen Dank. > > > > > > Grüsse > > > Haddi