Sehr genaue Abtastung

Hallo,

ich habe einen Regelalgorithmus, der z.zt. jede millisekunde Werte aus einer Karte abliest und Werte wieder schreibt. Nun will ich aber noch ein wenig genauer ablesen. Gibt es per c++ eine Methode, 0.1-Sekunden abzutasten?

Zur Erklärung: Z.Zt. benutze ich einen zusätzlichen task, der (mit hohe priorität) auf ein ereignis wartet mit dem timeout 1. Der Timeout wird dabei in Millisekunden angegeben und ich glaube ich kann da keine 0.1 angeben.

Vorschläge, Kommentare, Beleidigungen… :wink:

Nochwas: mir ist es nicht so wichtig, dass die Zeitabstände exakt gleich sind solange ich im Rahmen 0.1 millisekunden bleibe.

Gruss, Omar Abo-Namous

ich habe einen Regelalgorithmus, der z.zt. jede millisekunde
Werte aus einer Karte abliest und Werte wieder schreibt. Nun
will ich aber noch ein wenig genauer ablesen. Gibt es per c++
eine Methode, 0.1-Sekunden abzutasten?

Klar. BSD 4.3 definiert z.B. eine usleep-Funktion, mit der man theoretisch einzelne Mikrosekunden abwarten kann. Etwas ähnliches funktioniert mittels select. Du machst also eine kurze Kalibrierung, um den Zeitbedarf des Abtastens selber festzustellen, und wartest den rest der Zeit. Das wird aber unter den gängigen nicht echtzeitfähigen Betriebssystemen nicht funktionieren.

Vorschläge, Kommentare, Beleidigungen… :wink:

OK, Beleidigung. Das Thema „Timing“ läuft in diversen Abwandlungen hier alle zwei Tage durch, und macht ca. 50-70% der Posts in diesem Brett aus. Lesen macht schlau. Kannst du nicht lesen? Es sollte mittlerweile hinreichend klar sein, wie man unter welchen Bedingungen ein einzelnes Chronon abwarten kann.