ich habe ein Problem: Und zwar soll ich einen Takt an der Seriellen Schnittstelle erzeugen. Und zwar an den Pins RTS und DTR. Dass heisst da geht nichts über die Baudrate (oder??, wenn ja wäre es gelöst). Das Problem ist jetzt einfach die Zeit, und zwar soll ich Periodendauern zwischen 0.5ms und 1ms erstellen.
Meine Frage wie bekomme ich das hin. Also, so das es auch auf jeden Rechner so ist, also nicht einfach ne for-schleife so das es zufällig grade bei mir passt.
Meine bisherigen gedanken:
- erstmal mit Thread.Sleep(new Timspan(500000)); //für 0.5 ms // da lag ich um den faktor 100 daneben
- dann habe ich aktives warten probiert:
DateTime start = DateTime.Now;
//ein tick entspricht 100 Nanosekunden
while(((DateTime.Now - start).Ticks/10) < microSeconds)
;
Das hat die Periodendauer ungefähr halbiert (zu oben) - Ein Echtzeit-OS muss her!? Windows CE? Ein eigenes (habe ich mal or ner Weile angefangen, wäre echtzeitfähig da es nichts macht außer das
Die ersten beiden Lösugen waren nur mal so Versuche um eben abzuchecken wieviel fehlt. Dabei war mir klar das es nicht klappt.
Achso und der Thread in dem das ist hat schon die höchste Priorität.
Das mit WinCE wäre eine Idee, aber auch net so das wahre.
Ds mit dem eigenen OS. Ist nur so daher gesponnen, da derjenige für den das ist wohl kaum ein OS installieren möchte was ncihts kann außer ein bissl was senden.
Gibt es noch eine andere Möglichkeit als ein anderes OS, vlt. mit einem Treiber???
mfg