Hey guys, ich habe gerade ein neues Project bekommen, aber weil ich völlig anfänger bin, habe ich gar keine Ahnung, wie ich dies erledigen werden soll. Bevor ich mein Problem schreiben, muss ich zunächst erklären, dass ich ein ausländischer Student bin, deswegen ab und zu gibt es Fehler in meiner Aussage, ich versuche die zu vermeiden und bitte ich um Verständnis. Danke Also, das gesamte Project ist ein System-on-a-Chip zu entwerfen, aber für welchen Mikrocontroller ist es noch nicht entschieden. Die Kommunikation zwischen dem Mikrocontroller und PC wird mit USB realisiert, und meine Aufgabe ist die USB-Schnittstelle zu konfigurieren (auf der µC-Seite, also kann ich mit "Firmware" bezeichnen oder?). Ich habe einige Dokumentationen gelesen, aber sowieso bin ich noch verwirrend, wie genau soll es vorgehen. Gibt es jemand im Forum, der sehr nett ist und mir kurz erklären, wie ich Schritt für Schritt machen soll? Ich hoffe, dass ihr was ich meine verstehen kannt, und bedanke ich mich im voraus. Tony
http://blogs.msdn.com/b/usbcoreblog/archive/2009/10/31/how-does-usb-stack-enumerate-a-device.aspx Da bekommt man ein bischen gefühl dafür, wie es Windows so mach und auf was man bei Device achten muß. Aber da wirst du wohl noch nen Bischen lesen müssen über USB. gugel mal USB Stack, USB Spec usw. Danach sich das ganze mal auf der µC Seite angucken in Beispielen für den entsprechenden µC.
Wir setzen in unserem gegenwaertigen Projekt Cypress PSoC (3 und 5LP) ein, und haben dafuer Firmware und Host-Software fuer ein "Custom Device" (also keine der Standard Device Classes) implementiert. Auf Host-Seite verwenden wir libusb. An sich ist die Unterstuetzung durch die PSoC Creator Software von Cypress ganz gut, aber es hat doch ein Weilchen gedauert, bis alles zuverlaessig lief. Selbst wenn Ihr keine PSoC Bausteine verwendet, ist es vielleicht empfehlenswert, PSoC Creator herunterzuladen und installieren und ein Beispiel Projekt zu erzeugen, weil PSoC Creator die Erzeugung der USB Konfiguration (Configuration, Interfaces, Endpoints, usw.) sehr schoen unterstuetzt. Bei Silicon Labs ist das zum Beispiel viel schwieriger. Andreas
Tony Taylor schrieb: > Die > Kommunikation zwischen dem Mikrocontroller und PC wird mit USB > realisiert Welche Geschwindigkeit brauchst Du? Datenrate? - bis 20-30 kBytes/s -> USB HID Gerät: keine Treiber, PC-Seite einfach. - bis 150-200 kBytes/s -> VCP: Treiber notwendig, PC-Seite einfach. - mehr als 200 kBytes/s -> High-Speed (FX2/FT2232H oder on board): Treiber notwendig, PC-Seite etwas komplexer.
Danke für die Antworte. Pit schrieb: > Welche Geschwindigkeit brauchst Du? Datenrate? > bis 20-30 kBytes/s -> USB HID Gerät: keine Treiber, PC-Seite einfach. > bis 150-200 kBytes/s -> VCP: Treiber notwendig, PC-Seite einfach. > ... Also, was passiert bei der PC-Seite brauche ich eigentlich nicht berücksichtigen, die wird von anderen Kommilitonen erledigt. Meine Aufgabe ist völlig bei der Device-Seite. Aber trotzdem vielen Dank für deine Erklärung.
Als Anfaenger wuerde ich mir kein USB antun. Vielleicht mal bei FTDI reinschauen. Die haben USB to Serial fuer USB2. Auf der PC seite schaut's wie ein Serialportaus, auf der Controllerseite seriell oder parallel.
Tony Taylor schrieb: > > Also, das gesamte Project ist ein System-on-a-Chip zu entwerfen, aber > für welchen Mikrocontroller ist es noch nicht entschieden. Wie/Mit was enteickelt ihr denn eueren uC? Gibt es für die Plattform/Programm nichts fertiges?
Tony Taylor schrieb: > Also, was passiert bei der PC-Seite brauche ich eigentlich nicht > berücksichtigen, die wird von anderen Kommilitonen erledigt. Wenn Ihr euch dann nach 6 Monaten wieder zusammen setzt, Dein Komilitone einen VCP implementiert hat und Du Ihm Dein HID-Gerät zeigst, dann ist die Überraschung groß.
If english is your native language, you may post in it, too. Here are many people which write english quite fluently. This is especially true for a technical theme, as most of its basics are explained and described even to us germans first in english, in most cases.
Also wenn ich das richtig verstehe: Keine Erfahrung mit Microcontrollern, keine mit USB und keine mit Projektmanagement (Abstimmung über Protokolle etc.) Ich schätze mal da wird es eine Lernkurve von ca. 89,9° Steilheit geben, Projektlaufzeit sollte auf ca. 12 Monate mit 100 Stunden pro Woche angesetzt werden.
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.