Hallo, Ich möchte hier ein einen AVR mit einem Gerät verheiraten, das per USB CDC kommuniziert. D.h. ich brauche irgendetwas, das sich dem Gerät gegenüber als USB-Host präsentiert und die Daten des CDC-Kanals per UART weiterreicht. LUFA unterstützt zwar theoretisch genau diese Hostrolle, allerdings nicht mit dem ATMega32U4, den ich hier noch rumliegen habe. Kennt jemand einen günstigen Chip, den ich dafür verwenden kann? Den es am besten als Board und nicht nur als SMD gibt? :-)
Nabend, hab bei einem Projekt den AT90USBKEY [http://www.atmel.com/tools/at90usbkey.aspx] zusammen mit LUFA verwendet, hat bestens funktioniert. Gibt bestimmt noch andere Boards mit dem AT90USB1287, die man verwenden kann, wenn einem die Pinheader auf dem AT90USBKEY zu lütt sind. MfG
Du bis Dir auch 100%ig sicher, das es USB CDC und nicht ein FTDI, Silabs oder Prolific Chip ist? Die machen alle USB VCOM, aber keins ist CDC.
Der maximite macht CDC den gibt es auch UBW..... Es handelt sich um einen Pic32 für den es entsprechende USB-Treiber zu gibt. mehr dazu findest bei http://geoffg.net/maximite.html
Jim Meba schrieb: > Du bis Dir auch 100%ig sicher, das es USB CDC und nicht ein FTDI, Silabs > oder Prolific Chip ist? Die machen alle USB VCOM, aber keins ist CDC. Ziemlich:
1 | [ 3548.104076] usb 1-1.2: new high-speed USB device number 12 using ehci-pci |
2 | [ 3548.207139] usb 1-1.2: New USB device found, idVendor=2108, idProduct=780b |
3 | [ 3548.207146] usb 1-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0 |
4 | [ 3548.207150] usb 1-1.2: Product: Neato Robotics USB v2 |
5 | [ 3548.207153] usb 1-1.2: Manufacturer: Linux 2.6.33.7 with fsl-usb2-udc |
6 | [ 3548.212158] cdc_acm 1-1.2:2.0: This device cannot do calls on its own. It is not a modem. |
7 | [ 3548.212245] cdc_acm 1-1.2:2.0: ttyACM0: USB ACM device |
Hallo, man kann mit diesem atMega32U2 [1] und per USB mit der LUFA Library [2] ein CDC bereitstellen. Oder einen AVRISP-MKII Clone [3] aufbauen. Link [1] http://www.ehajo.de/baus%C3%A4tze/smd-baus%C3%A4tze/atmega32u2-breakout-board.html?search=atmega32u [2] http://www.fourwalledcubicle.com/LUFA.php [3] http://www.fourwalledcubicle.com/AVRISP.php
Uwe S. schrieb: > Hallo, > man kann mit diesem atMega32U2 [1] und per USB mit der LUFA Library [2] > ein CDC bereitstellen. Du hast die Frage nicht verstanden - ich will kein CDC-*Device* bauen, sondern einen Host, der mit einem vorhandenen CDC-Gerät kommuniziert. Mit dem ATMega32U2 oder U4 geht das nicht, wie man im LUFA-Code (LUFA/Drivers/USB/Core/USBMode.h) sieht:
1 | #if (defined(__AVR_AT90USB162__) || defined(__AVR_AT90USB82__) || \
|
2 | defined(__AVR_ATmega32U2__) || defined(__AVR_ATmega16U2__) || defined(__AVR_ATmega8U2__))
|
3 | #define USB_SERIES_2_AVR
|
4 | #define USB_CAN_BE_DEVICE
|
5 | #elif (defined(__AVR_ATmega32U4__) || defined(__AVR_ATmega16U4__))
|
6 | #define USB_SERIES_4_AVR
|
7 | #define USB_CAN_BE_DEVICE
|
8 | #elif (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB1286__))
|
9 | #define USB_SERIES_6_AVR
|
10 | #define USB_CAN_BE_DEVICE
|
11 | #elif (defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1287__))
|
12 | #define USB_SERIES_7_AVR
|
13 | #define USB_CAN_BE_DEVICE
|
14 | #define USB_CAN_BE_HOST
|
Recht geringen Aufwand dürftest Du haben, wenn Du einen VNC1L ("Vinculum") verwendest und in den passende Firmware hineinlädst. Sonst müsstest Du einen anderen USB-Host-Controller verwenden und die Ansteuerung (den USB-Host-Stack) auf Deinem eigenen µC umsetzen. Kann man machen, ist aber mehr Aufwand.
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.