
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo Dietmar, habe meinen Fehler gefunden. > TIMER wird auf der Open-Macro alle 20 ms um eins erhöht. Nach 50 TIMER-Ticks ist eine Sekunde verstrichen. Ja ist korrekt, wenn man eine Wortvariable als Vergleicher nimmt. Danke für den Link. Dies ging leider aus der Doku ( >..., zählt der Timer von 0 bis 255) nicht hervor, hatte deswegen nur ein Byte als Vergleicher genommen. Dann ist wohl so eine Abfrage auf der Mikro/Midi nicht so ohne weiteres möglich (keine Wordvariablen)! Wegen des Bytes hat die Makro wahrscheinlich so schnell gezählt, hängt wohl mit den Highbyte und Lowbyte zusammen. Aber ist ja auch nicht schlecht, so kann man auch kleinere Takte (ca. mal 3,56ms pro Abfrage) realisieren. Lief bei mir jedenfalls ohne Probleme. Habe meine Timerfunktion jetzt geändert, so kann ich mehrere Zeiten auch quasi parallel laufen lassen ohne die Pause-Funktion zu nutzen, man muss halt nur die Zeit im Prog auf >0 und ==0 abfragen. define TimerV WORD 'Vergleicher für Timer '................ FUNC FC_Timer if TIMER<>TimerV then TimerV=TIMER if Blinktakt>0 then 'Blinktakt Gelb Blinktakt=Blinktakt-1 'Zähler verringern end if if UMS_RotGruen>0 then 'Umschaltung Ampel rot auf grün oder grün auf rot UMS_RotGruen=UMS_RotGruen-1 'Zähler verringern end if end if return end FUNC Danke für die Tips. Viele Grüsse Olaf |
| Antwort schreiben |