Hi, wie stelle ich es an um mit einem Arduino Uno mit einem Programm per USB zu kommunizieren? Ich fand bis jetzt nur Code der eine COM-Schnittstelle bedient, jedoch nichts darüber wie das USB-Gedöns eines entsprechenden ATMega, FTDI o.ähnl. gehandhabt werden muß. Mit nem USB-PIC 18F4550 hab ich das mittels vorgefertigtem Framework für C# gelöst, So etwas stelle ich mir auch für AVR vor. Oder benötige so etwas für den Arduino nicht...? Hab im Moment etwas die Übersicht verloren.
warum willst du es nicht über COM machen? Usb stellt doch bestimmt einen virtuellen com-port zur verfügung.
Geht das denn 'einfach so'...? Zumal ich ja meiner Anwendung schon n bissel was über das USB-Device im Desciptor mitteilen muß. Oder nicht?
Joachim ... schrieb: > Geht das denn 'einfach so'...? Sicher. Das ist ja das schöne an den FTDI. An beiden Endpunkten kann man so tun, als ob das eine stink normale Serielle Verbindung wäre. Den Mittelteil zwischen den Endpunkten erledigen der PC-Treiber und der FTDI Chip, so dass man als Programmierer mit den Komplexitäten von USB überhaupt nicht in Berührung kommt. Auf PC Seite hat man einen virtuellen COM-Port, der vom Treiber auf USB umgesetzt wird und auf µC Seite hat man einen FTDI, aus dem die Signale schon aufbereitet für einen UART Baustein wieder rauskommen.
Hm. Vermutlich habe ich die einzelnen OSI-Layer nicht sauber genug getrennt... Das heißt, ich müßte mich auf die Suche nach einem entsprechenden Treiber/DLL oder ähnl. für den Arduino machen... bzw. befindet der sich vielleicht schon auf der Festplatte durch das installieren der Arduino-Umgebung. Irgendwie blick ich's heut' nicht so recht;-) Werd mal weiter graben.
Joachim ... schrieb: > Treiber/DLL oder ähnl. für den Arduino machen... bzw. befindet der sich > vielleicht schon auf der Festplatte durch das installieren der > Arduino-Umgebung. Höchst wahrscheinlich hast du den schon lange. Sieh doch einfach mal im Gerätemanager bei angestecktem Arduino noch, ob du einen virtuellen COM-Port hast. Ziehst du den Arduino vom PC ab, dann verschwindet der COM-Port im Gerätemanager. Steckst du ihn an, dann ist er wieder da. Dauert keine 2 Minuten und du weißt, was Sache ist.
Beim Arduino sind entsprechende Treiber dabei. Da wird deine USB-Schnittstelle auf den COM-Port gemapped.In der Powershell z.B. funktioniert folgender Code (COM3 ist der Arduino-Port). $port= new-Object System.IO.Ports.SerialPort COM3,9600,None,8,one $port.Open() $port.Write([byte]0xFE,0,1) // hier halt was du senden willst $port.Close() Das kannst Du Dir ja in C/C++ Code umdenken. Also einfach Serial aufmachen... (Siehe z.B. hier http://www.beefrankly.org/blog/2011/12/10/arduino-1-0-and-sparkfun-serial-lcd/ )
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.