uC Datalogger zu GUI für die Datenverarbeitung

Also habe ich mich bei electronic.stackexchange nach diesem umgesehen und bin hier gelandet: Welche Art von USB-Protokoll für Datenlogger

Grundsätzlich möchte ich eine Spannung abtasten (insbesondere von einer Fotodiode über einen Transimpedanzverstärker) und an den PC senden. Ich möchte es jedoch nicht an ein Hyperterminal senden, sondern in meiner eigenen GUI grafisch darstellen und lustige Dinge tun, z. B. eine FFT der Daten anzeigen. Ich sehe also zwei Teile dieses Projekts; Mikrocontroller und GUI.

Die Sache ist, ich bin mir nicht sicher, wo ich anfangen soll. Die Mikrocontroller, mit denen ich Erfahrung habe, sind mit BASIC STAMP 2, PICAXE und einigen Arduino. Aber ich möchte etwas verwenden, das in der Industrie beliebter wäre. Also beschloss ich, dass ich mich vielleicht für die dsPIC-Serie entscheiden und sie durch das Online-Buch von mikroC lernen würde.

Ich wollte lernen, HID-Unterstützung auf dem dsPIC zu verwenden und es an den PC zu senden (ich weiß, leichter gesagt als getan). Ich habe im Internet gelesen, dass CDC besser ist, da es nicht unterbrochen wird, aber ich mag die Idee, keine Treiber herunterladen zu müssen. Bei einer schnellen Google-Suche sehe ich, dass andere Unternehmen HID-Datenlogger herstellen, also muss es in Ordnung sein?

Was die GUI betrifft, habe ich grundlegende akademische Erfahrung mit C++ und Java. Ich habe Java Swing verwendet, um einige Desktop-GUI-Anwendungen zu erstellen, aber sie waren ziemlich einfach im Vergleich zu dem, was ich hier tun möchte. Ich bin mir auch nicht sicher, wie ich den USB-Anschluss "lesen" soll, damit Daten als Eingaben für meine GUI verwendet werden können. Ich dachte, dass ich (na ja, sobald ich es gelernt habe) C # verwenden würde, da ich irgendwo gelesen habe, dass es ziemlich einfach ist, Daten von einem USB-Anschluss für ein Programm abzurufen und in einer GUI anzuzeigen. Ich wollte mit dem GUI-Teil beginnen und versuchen, Dummy-Daten wie eine Maus zu verwenden, um sicherzustellen, dass es funktioniert, vielleicht sogar einen tatsächlichen Datenlogger zum Testen verwenden. Dann mummeln Sie mit dem dsPIC-Teil.

Also denke ich, meine Frage ist, gehe ich das richtig an? Ist das, was ich vorschlage, überhaupt möglich?

Natürlich ist es möglich, aber das bedeutet nicht notwendigerweise, dass es für Sie oder in angemessener Zeit möglich ist. Sind Sie dabei 1) wegen der Lernerfahrung oder 2) um einen Prototypen zum Laufen zu bringen oder 3) um ein produktionsreifes Produkt herzustellen? Wenn 1), fahren Sie fort und lernen Sie. Wenn 2), besorgen Sie sich einen FTDI232-Chip und verwenden Sie Serial-over-USB. Wenn 3), stellen Sie jemanden dafür ein.

Antworten (1)

Wenn Sie serielle Daten über seriell, USB oder nicht an Ihren Computer senden, müssen Sie nur Computerprogramme schreiben, die die eingehenden Nachrichten analysieren können. Sie können in Büchern über die Erstellung von Compilern nachlesen, wie Sie den Parser schreiben, und in den Betriebssystemhandbüchern, wie Sie eine Schnittstelle zur seriellen Schnittstelle herstellen.

Wenn Sie schnellere Geschwindigkeiten benötigen, wie z. B. volles USB 2.0 mit 480 Mbit/s, können Sie sich in libusb (für OS X und Linux), IOKit (für OS X) und Windows DDK sowie im Handbuch Ihres Mikrocontrollers darüber informieren, wie Sie rohe USB-Pakete senden können Nutzen Sie die vollen USB-Busgeschwindigkeiten.