Hallo allerseits Mittlerweile gibt es ja ATXMega mit USB-Unterstützung, bei denen anscheinend die meisten Bugs der XMegas beseitigt sein sollen, z.B. den ATXMega 128 A3U. Wie funktioniert jetzt die Datenübertragung auf USB zwischen XMega und (Windows-)PC im Detail? Wie meldet sich der XMega beim Einstöpseln in den USB-Port? Als HID, als virtuelle serielle Schnittstelle? Welche (Windows-)Treiber sind da notwendig, wie kann ich mit selbstgeschriebenen Windows-Programmen (Delphi) Daten zum XMega schicken bzw. von diesem empfangen? Fragen über Fragen, hoffentlich hat jemand auch Antworten dazu, danke sehr.
Georg schrieb: > Wie funktioniert jetzt die Datenübertragung auf USB zwischen XMega und > (Windows-)PC im Detail? Das ist abhängig von der Firmware, die du für den Mikrocontroller schreibst. > Wie meldet sich der XMega beim Einstöpseln in den USB-Port? Als HID, als > virtuelle serielle Schnittstelle? "" > Welche (Windows-)Treiber sind da notwendig, wie kann ich mit > selbstgeschriebenen Windows-Programmen (Delphi) Daten zum XMega schicken > bzw. von diesem empfangen? "" Am einfachsten ist es ein USB-CDC Serial Port auf dem Microcontroller zu implementieren. Der lässt sich dann auf der PC-Seite wie ein UART handeln. http://www.elektor.de/elektronik-news/neue-xmega-generation-mit-full-speed-usb.1896970.lynkx Gruß Oliver
Mit anderen Worten: Der Mikrocontroller selbst benötigt eine Firmware für die USB Schnittstelle und du brauchst für den PC einen Treiber. Da das für Hobby-Elektroniker nicht einfach ist, sind fast alle Entwicklungs-Kits mit einem USB-UART Chip ausgestattet, der je nach Betriebssystem mit einem Standard-Treiber oder ganz ohne Treiberdownload bereits vom System unterstützt wird.
Ich würde sagen es kommt auf deine Verwendung an. Für nen paar Bytes nimm einfach HID. Dafür gibts viele Libarys sowohl auf dem MCU als auch auf dem PC. Schau mal bei LUFA oder bei den Atmel Appnotes.
Danke für eure Antworten. Nach dem Studium der diversen Atmel AppNotes und Beispielprojekte bin ich zur Überzeugung gelangt, dass der herkömmliche Weg z.B. über FTDI-Chips und normale UART-Kommunikation bei weitem am einfachsten ist. Das wurde von mir bereits praktiziert und funktioniert problemlos. Eine eigene echte USB-Lösung würde wahrscheinlich viele Tage/Wochen Arbeit für die Einarbeitung ins Thema bedeuten, das ist mir für eine private nicht kommerzielle Lösung zuviel Aufwand.
Georg schrieb: > Nach dem Studium der diversen Atmel AppNotes und Beispielprojekte bin > ich zur Überzeugung gelangt, dass der herkömmliche Weg z.B. über > FTDI-Chips und normale UART-Kommunikation bei weitem am einfachsten ist. Jaein ... Schau dir mal das kleine Ding namens "Teensy" und die zugehörigen Code-Beispiele auf in der "Code-Library" von http://www.pjrc.com/teensy/ an. Diese Dinge bringt man mit bisschen Erfahrung an einem Tag zum laufen und nach 3, 4, 5 ... Tagen hat man seine eigene USB-Anwendung !!!
>>Diese Dinge bringt man mit bisschen Erfahrung an einem Tag zum laufen >>und nach 3, 4, 5 ... Tagen hat man seine eigene USB-Anwendung !!! Das wage ich mal zu bezweifeln. Wenn Du von den vorgegebenen Deskriptoren weg gehst, musst Du wissen was du tust. D.h. es wird eine Einarbeitung in USB notwendig, was nicht unter ein paar Wochen zu machen ist (oder hast Du das mit 'bisschen Erfahrung' gemeint?). Gruss Peter
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.