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 

Multitasking



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

12.03.2009, 09:13
Beitrag #1

eckilein Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 129
Registriert seit: Jan 2008

2010 FDS
2008
de

59929
Deutschland
Multitasking
Hallo

Ich sitze grade vor dem Problem, das ich 2 Sachen möglichst simultan machen muss, es aber nicht mit Rendezvous geht, bzw ich nicht weiß wie.
Das Problem sieht wie folgt aus:
Ich habe im eigendlichen Sinne 2 while-Schleifen in der einen ist eine Protokollinterpretierung und in der anderen Messwerterfassung. Jetz sieht das ungefähr so aus:
   
Jeder abgerundete Kasten steht für eine while-Schleife (sind eigendlich mehr)
Die Drähte und Punkte sollen veranschaulichen das jeder mit jedem untereinander irgendwie kommuniziert.

Wie man sieht ist halt unten nur die Messung .. die läuft immer gleich ab. Oben ist das Protokoll das ausgewertet wird, je nach Eingaben. Diese bekomme ich über die Serielle Schnittstelle, das ist jedoch an der Stelle nicht wichtig.
Wie es wohl ersichtlich ist, läuft die Messung immer im gleich rythmus bei gleichem Takt(in etwa)
Jetzt ist die Sache, das im Protokoll er sich in der einen, oder der anderen while-Schleife mal kürzer mal länger aufhällt.
Die kommunikation zwischen den beiden Hauptschleifen bekomme ich mit Variablen hin. Eine Möglichkeit wäre, das ich es so realisiere:
   
Das ist sehr sehr simpel:)aber hat es auch den Effekt den ich brauche?
Ist die Zeit für die untere Schleife einmal gestellt muss ich mir sicher sein, das es auch funktioniert, wenn ich 10s einstelle brauche ich auch wirklich alle 10s einen Messwert. Darin sind Toleranzen mess - Karten berücksichtigt.

Die eigendliche Frage ist also wenn ich bei der oberen Schleife mal für einen Durchlauf 0,2s oder auch 100s brauche, ist dann trotzdem gesichert das die untere in dem eingestellten Intervall die Messungen ausführt, ohne dass die obere Schleife das beeinflusst.

Ich hab zuerst gedacht ich könnte es über Multithreading lösen.. jedoch hab ich keine 2 Kerne / CPUs -.-

Ich hoffe ich habs nicht zu kompliziert ausgedrückt.^^

Thomas

There are 10 types of people in this world. Those who understand binary and those who don't.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Nachrichten in diesem Thema
Multitasking - eckilein - 12.03.2009 09:13
Multitasking - Lucki - 12.03.2009, 09:46
Multitasking - eckilein - 12.03.2009, 10:22
Multitasking - IchSelbst - 12.03.2009, 10:23
Multitasking - deicebear - 08.11.2010, 16:44
Multitasking - Lucki - 08.11.2010, 20:11
Multitasking - deicebear - 09.11.2010, 08:42
Multitasking - Lucki - 09.11.2010, 09:27
Multitasking - deicebear - 09.11.2010, 09:57
Multitasking - Achim - 09.11.2010, 10:57
Multitasking - Lucki - 09.11.2010, 14:17

Gehe zu: