AVR-USB

General discussions about V-USB, our firmware-only implementation of a low speed USB device on Atmel's AVR microcontrollers
Post Reply
Zeph

AVR-USB

Post by Zeph » Fri Jun 01, 2007 9:02 pm

Hi, ich erspare es mir mal diesen Beitrag in Englisch zu verfassen, da es scheinbar eine menge User hier gibt, die der deutschen Sprache mächtig sind.
Und zwar wollte ich mich mit USB Beschäftigen und bin hier auf diese Seite gestoßen und bin überrascht, das es ohne große Umstände möglich zu sein scheint, mit einem AVR USB zu nutzen. Mit ein bisschen Stöbern gelang ich zu diesem USB-LED-Fader, was mir sehr entgegen kam, da ich alle Bauteile auf der Arbeit zur Verfügung hatte, testweise die Schaltung aufgebaut und an einen Rechner angeschlossen. Gerät erkannt, Treiber installiert.
Nun wollte ich mich mit der Software auf dem Rechner beschäftigen, was jedoch scheinbar ein Problem ist, da das ganze auf Linux aufgebaut ist.
Mittels Suchen kam ich auf minGW und die USBLib für Windows. MinGW, Umgebungsvariable eingestellt, USBLib geladen und installiert. USB.h in den Includeordner von minGW kopiert und versucht das Kommandozeilentool auf dem USB-LED-Faber Projekt versucht mittels gcc zu kompilieren, was jedoch nicht klappt, da er alle Funktionen nicht kennt.

Habe es so mehr oder weniger nach Beschreibungen die ich im Netz gefunden habe umgesetzt, scheinbar jedoch was falsch gemacht.
Gibt es irgendwas spezielles zu beachten oder irgendwo ein Tut, indem alles zusammenhängend erklärt ist, wie ich das ganze unter Windows nutzen kann?

christian
Objective Development
Objective Development
Posts: 1443
Joined: Thu Nov 09, 2006 11:46 am

Post by christian » Thu Jun 07, 2007 2:19 pm

Um das development-System zu testen, probier's bitte einmal mit der host-software von PowerSwitch, unserem Referenzprojekt. Da ist ein Makefile fuer Windows dabei. Wenn sich das uebersetzen laesst, dann funktioniert zumindest das Entwicklungssystem.

Guest

Post by Guest » Fri Jun 08, 2007 5:29 pm

thx, aber hatte es doch noch hinbekommen. Musste die usb.h extra ins Projekt kopieren, klappte dann aber einwandfrei.
Kannst du mir noch schnell sagen, womit ich die Firmware kompilieren kann? Meine Versuche mit avr-gcc schlugen leider fehl und irgendetwas in diese Richtung hab ich leider auchnochnicht gefunden.

christian
Objective Development
Objective Development
Posts: 1443
Joined: Thu Nov 09, 2006 11:46 am

Post by christian » Fri Jun 08, 2007 6:47 pm

Du kannst auch die -I Option benutzen um den Include-Suchpfad zu erweitern.

Die firmware laesst sich mit avr-gcc uebersetzen. Ein komplettes Entwicklungssystem bekommst Du mit WinAVR. Da ist der avr-gcc samt allen notwendigen tools und libraries enthalten.

Zeph

Post by Zeph » Mon Jun 11, 2007 2:11 pm

Hi,
also wenn ich das ganze mit WinAVR kompilieren will, bricht er mir das ganze mit einer Fehlermeldung ab, die wiefolgt lautet:"indefined reference to 'usbCrr16append'".

christian
Objective Development
Objective Development
Posts: 1443
Joined: Thu Nov 09, 2006 11:46 am

Post by christian » Mon Jun 11, 2007 3:38 pm

Das ist eine Funktion der firmware, die in usbdrv.c verwendet wird und in usbdrvasm.S implementiert ist. Diese Funktion sollte auf der Host-Seite gar nicht erst vorkommen.

Kann es sein, dass Du versehentlich usbdrv.c dazu linkst?

Oder, wenn es sich um die firmware handelt, dann muss auch usbdrvasm.o dazu gelinkt werden.

Zeph

Post by Zeph » Wed Jun 13, 2007 4:50 pm

thx, habs nun hinbekommen. Musste ne *.s Datei noch extra in WinAVR hinzufügen, in den Ordnerkopieren hat nicht gelangt. Danke für deine Hilfe^^.

Post Reply