2009-07-20 4 views
8

Gibt es eine anständige USB-Kommunikations-API? Vorzugsweise Cross-Plattform (Linux, wenn nicht, ich denke)USB-Kommunikations-API

Ich habe keinen spezifischen Gebrauch im Sinne hat, ich will nur über die Verwendung der USB-Ports für die zukünftige Elektronik Projekte lernen. Ich weiß, dass das sehr allgemein ist, ich werde versuchen, die Frage zu verfeinern, da die Antworten mich in die richtige Richtung weisen.

Danke.

Antwort

5

libusb sollte für Sie arbeiten .. Cross-Plattform, User-Space-USB-Tools.

+0

Ist es wirklich plattformübergreifend? Von dem, was ich sehe, ist es nicht wirklich bereit für die Bereitstellung auf Windows. Es gibt einen separaten Win32-Port der älteren Versionen, kaum was man plattformübergreifend nennt. Gibt es keine bessere Alternative? – CptAJ

2

Abhängig von Ihren Elektronikprojekten könnte ein USB-Mikrocontroller eher das sein, wonach Sie suchen.

Dies ist einer meiner Lieblings-USB-Geräte, die diese Art der Sache (Servosteuerungen, Motorsteuerungen, LEDs, Analog/Digital-I/O, etc.) tun phidgets.com

Plattformübergreifend, ausgezeichnet. Zum Beispiel könnte ich die Position eines Servos auf halbem Weg setzen, um den Fahrer anzurufen:

Einfach wie Kuchen.

Viel Glück!

+0

Nun, nicht ganz. Ich plane, auf etwas zu tun ähnlich, aber ich habe keinen Zugriff auf diese Geräte in meinem Land so von Grund auf neu zu bauen. Ich werde wahrscheinlich PICs und so in einem Entwurf meines eigenen am Ende mit. Auf jeden Fall sein mehr Spaß auf diese Weise = P Also ja, ich will als beste USB-Datenübertragung verstehen, wie ich kann. – CptAJ

1

Sie können für Windows versuchen WinUSB (http://msdn.microsoft.com/en-us/library/aa476426.aspx) Benutzermodus Windows USB-Treiber-Handhabung - ab Vista? (yuck) Ich habe es nie benutzt, und es wird nicht auf Linux funktionieren: Warum willst du plattformübergreifend an erster Stelle? Für libusb für Windows bin ich nicht sicher, ob es alle Arten von Übertragungen unterstützt. (abhängig von der Version) Für Gerätefunktionen können Sie AVRUSB (http://www.obdev.at/products/vusb/index.html) verwenden. Sie benötigen nur einen AVR-Prozessor und einige wirklich einfache zusätzliche Hardvare.