INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
MEHRERE Vorgänge parallel ausführen?
26.05.2015, 12:00
Beitrag #1
Question MEHRERE Vorgänge parallel ausführen?
Hallo,

Wie kann ich zwei oder mehrere "Vorgänge" programmieren, dass sie parallel(zugleich) ausgeführt werden?

Wenn ich z.B.: ein Programm habe, wo eine LED blinkt, sollte zugleich geprüft werden, ob ein Taster oder ähnliches betätigt wurde.
Denn so wie ich es jetzt habe wird erst wieder geprüft nachdem ein Blinkvorgang abgeschlossen wurde, ist in dem Fall auch nicht so schlimm, aber für spätere Projekte wäre praktisch.


Danke im Voraus!!!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.05.2015, 12:07 (Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2015 12:08 von Much.)
Beitrag #2
RE: MEHRERE Vorgänge parallel ausführen?
Hier habe ich ein Poti, wenn ich es auf die Seite gedreht habe, wo die LED langsam blinkt, und dann schnell in die entgegengesetzte Richtung drehe, dauert es ein wenig, bis sie schneller blinkt.
Es ist jetzt bei dem Projekt nicht so schlimm, aber wenn die Wartezeiten größer wären, wäre es nicht gut.

int z, t;

void setup()
{
pinMode(41, OUTPUT);
pinMode(40, OUTPUT);
Serial.begin(9600);
}


void loop()
{
z=analogRead(A1);
t=map(z, 0, 1023, 20, 500);
Serial.println(z);

digitalWrite(41, 1);
digitalWrite(40, 0);
delay(t);
digitalWrite(41, 0);
digitalWrite(40, 1);
delay(t);
}
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.05.2015, 12:49
Beitrag #3
RE: MEHRERE Vorgänge parallel ausführen?
Hi,
jetzt kommt die hier allseits beliebte Leier von dem Tutorial Sketch "Blinken ohne Delay" Big Grin

Also schau dir mal diesen Sketch an...dann wirst du eine Lösung finden...
kleiner Tipp, lass die Loop laufen ohne delay()'s und immer wenn eine Zeitmarke überschritten ist wird die gewünschte Funktion ausgelöst und der Timer dazu neu gesetzt.
Weil wirklich gleichzeitig geht auf einer Singel-Core CPU nicht.

Die andere Alternative wäre Änderung per Interrupt einfliesen zu lassen, aber damit haste noch lange keine schnellere Reaktion solange du delay()'s verwendest.
lg
bk

1+1 = 10 Angel ...und ich bin hier nicht der Suchmaschinen-Ersatz Dodgy...nur mal so als genereller Tipp..
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
26.05.2015, 13:39 (Dieser Beitrag wurde zuletzt bearbeitet: 26.05.2015 18:43 von tito-t.)
Beitrag #4
RE: MEHRERE Vorgänge parallel ausführen?
es gibt noch mehr Möglichkeiten, weitaus flexibler, und nur teilweise (aber nicht immer) schwerer zu händeln:

Multitasking !

Da gibt es einfache und komplizierte libs, die letzteren aber sogar als preemptives Echtzeitsystem (RTOS, z.B. OSEK) !

Der Due kann immerhin mit wenig Aufwand bereits "von Haus aus" kooperatives Multitasking
("Scheduler": http://www.arduino.cc/en/Reference/Scheduler )
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  mehrere Taster entprellen Kitt 15 504 24.10.2016 21:17
Letzter Beitrag: georg01
  Taster für mehrere Funktionen matthias3579 5 345 16.08.2016 16:00
Letzter Beitrag: StephanBuerger
  Mehrere Wertabfragen blebbens 5 370 18.06.2016 22:58
Letzter Beitrag: Scheams
  2 und mehrere Led´s mit Fernbedienung AN / AUS + Blinkfunktion Golffahrer 22 934 07.06.2016 11:31
Letzter Beitrag: hotsystems
  Mehrere Abläufe gleichteitig mit "Millis" MarkusSpielt 3 657 11.04.2016 18:23
Letzter Beitrag: MarkusSpielt
  Funktion in Loop einmalig ausführen Haustechno 4 644 09.03.2016 22:43
Letzter Beitrag: Haustechno
  Mehrere MCP23017 dynamisch verwenden itsy 5 611 14.02.2016 13:22
Letzter Beitrag: itsy
  I ch brauche mehrere SDA und SCL am MEGA2560 arduinofan 5 752 10.01.2016 21:15
Letzter Beitrag: arduinofan
  Mehrere Geräte über eine IR Fernbedienung Respun 20 1.994 07.01.2016 23:51
Letzter Beitrag: hotsystems
  mehrere Analoge eingänge seriell ausgeben rieders 5 784 28.11.2015 09:55
Letzter Beitrag: Bitklopfer

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste