Hallo HaWe,
ich finde die Idee sehr gut, ich habe etwas ähnliches gemacht, jedoch mit Lazarus/Pascal für Windows.
Die Windowsschnittstelle ist schon "etwas" grausam, da gebe ich CEOS recht, aber ich habe mich durchgerungen
und sie recht gut zum laufen gebracht. Ich bekomme nun 4000 Messdaten a 16 Bit pro Sekunde in "quasi" Echtzeit
von meiner Elektronik zum PC übertragen und kann sie in Kurven darstellen und skalieren
Zudem wirst Du eine Art "Synchronizer" benötigen, damit die Software auch immer richtig einrastet,
wenn das Kabel mal abezogen oder angesteckt wird. Ich hab mir dafür einen speziellen 16 Bit Code ausgedacht,
der normalerweise nicht in meinen Messwerten auftaucht und in dem jedes Nibble unterschiedlich ist.
Tests mit Original COM vom Motherboard und auch mittels Silabs Treiber USB laufen bei mir problemlos.
Ich musste teils auch in den Systemeinstellungen (Gerätemanager) einges umstellen, damit ich schneller an meine Daten rankomme.
Grade die USB Schnittstellen puffern sehr viel zwischen und entsprechend verzögert kommen dann auch die Daten an
bzw. garnicht, wenn noch nicht genügend Daten vorhanden sind.
Ich habe mir dazu einen Timer geschaffen der jede Millisekunde nachschaut ob schon Daten vorhanden sind.
Witzigerweise bzw. unverständlicherweise stellt windows dafür die Funktion
ClearCommError zur Verfügung, da muss man aber erstmal drauf kommen....
Da bekommt man die Anzahl TX und RX Daten zurück
Aber das sind Optimierungen die man zum Schluss tätigen kann, erstmal muss die Schnittstelle gut laufen.
Siro
Lesezeichen