PLM-Ports erstellen Kategorie: Programmierung (von Erich - 18.04.2006 16:32) | ||
| ||
Hallo nochmal, ich habe schon etwas überlegt, ob ich ein extra-Thema erstelle, weil ich ja was verwandtes schon eröffnet hatte. Zuletzt habe ich mich aber mit einer reinen PBM/PWM/PLM-Regelung abgefunden. Nun (nochmal) meine Bedürfnisse: ich muss also drei Motoren steuern und habe natürlich drei PLM- Ports zur Verfügung. Der dritte ist bekannterma�en für den beeper, den ich aber gerne weiter nutzen möchte, weswegen ich ihn nicht abschlie�en will. Deswegen kann man ja digitale Ports auch per Programmierung nutzen, aber kann man damit auch einen sinnvollen Ersatz erreichen? hier mehrere Varianten, die aber mein System flei�ig beschäftigt haben: function digplm (int timBrt, int timPer, int port_) { long timstate1; ports.set(port_, 1); timstate1 = system.timer(); //Variante 3 loop { wait system.timer()-timstate1 == timBrt; ports.toggle(port_); wait system.timer()-timstate1 == timPer; ports.toggle(port_); timstate1 = system.timer(); } //Variante 2 /* loop { while(system.timer()-timstate1) < timPer { if (system.timer()-timstate1) == timBrt ports.toggle(port_); } timstate1 = system.timer(); ports.toggle(port_); }*/ //Variante 1 /* loop { if (system.timer()-timstate1)>= timPer { ports.set(port_, 1); timstate1 = system.timer(); } if (system.timer()-timstate1)>= timBrt ports.set(port_, 0); }*/ } leider habe ich nichts tolles im Netz gefunden, weswegen ich mir mit diesem Geschmarre hier behalf ;) Hat jemand eine gute Idee? Und vielleicht wäre eine ausschlie�liche Verwendung der reinen, digitalen Ausgänge ja gar nicht so verkehrt, da man diese von timer-Ereignissen abhängig machen und sich evtl. threads sparen könnte?!? Freue mich auf Antworten! (hoffentlich hab ich nix vergessen) Erich | ||
Antwort schreiben Antworten: Re: PLM-Ports erstellen (von Ingo - 30.04.2006 10:53) |