Probleme mit V-USB

OP #2961140
Lesenswert?

Hi :)

Ich versuche seit einigen Stunden meinen ATmega32 mit Hilfe der V-USB 
libary mit meinem Laptop zu verbinden. Leider scheiterts schon beim 
kompiliert.

Da ich keine Ahnung von V-USB habe, wollte ich einfach mal dieses 
Tutorial nachprogrammieren: 
http://hackaday.com/2012/02/09/learning-to-use-the-v-usb-avr-usb-firmware-library/

Nur leider kommt beim komilieren folgender Fehler: "usbdrv.c:537: 
undefined reference to `usbCrc16Append'"
Das deutet für mich darauf hin, dass die Datei, in der die Funktion 
"usbCrc16Append" definiert wird, nicht eingebunden ist.
Also habe ich alle Dateien, die zu V-USB gehören nach dem Konstruktor 
besagter Funktion durchsucht.
Und siehe da, ich habe sie in "usbdrvasm.S" gefunden.
Um das Problem zu beheben, habe ich "usbdrvasm.S" zu meiner Makefile 
hinzugefügt (ASRC = ../../PROJECTS/test/usbdrvasm.S") und sie mit ' 
#include "usbdrvasm.S" ' in main.c eingebunden.
Leider führte das nurnoch zu mehr Fehlern. Eine kleine Auswahl:

usbdrvasm.S:220: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before 'implementation'
usbdrvasm.S:222: error: expected declaration specifiers or '...' before 
'(' token
usbdrvasm.S:222: error: conflicting types for 'usbCrc16'
usbdrv.h:319: error: previous declaration of 'usbCrc16' was here
usbdrvasm.S:223: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before 'r24'
usbdrvasm.S:224: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before 'r22'
usbdrvasm.S:225: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before 'variables'
usbdrvasm.S:226: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before 'r18'
usbdrvasm.S:230: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before 'r24'
usbdrvasm.S:231: error: expected '=', ',', ';', 'asm' or '__attribute__' 
before 'X'

Ich hab an usbdrvasm.S und usbdrv.c nicht rumgespielt.
Kann es sein, dass man Assembler Dateien nicht so einbindet, und mein 
Compiler sie deshalb versucht als C zu verstehen?


Ich wäre euch echt dankbar, wenn Ihr euch mal die includes und die 
Makefile anschauen könntet :D

(ich verwende übrigens WinAVR, Programmers' Notepad und den 
Makefile-Editor)

mfg
Angehängte Dateien:
OP #2963300
Lesenswert?

Ich habs jetzt mit ner anderen Makefile und ner neuen USB-Verbindung so 
weit geschafft, dass der Code compiliert und der mega32 vom Laptop als 
Unbekanntes Gerät (VendorID=0x00 & DeviceID=0x00) "erkannt" wird.
Ich werde heut zum dritten Mal die Verdrahtung und Schaltung überprüfen 
und nochmal den Code durchgehen.
Hat noch jemand ne bessere Idee?

mfg
OP #2963898
Lesenswert?

Also D+ und D- sollten stimmen, die hab ich schon mehrfach kontrolliert.
Ich hab mich beim USB-Anschluss an den angehängten Schaltplan gehalten.
Nur dass ich D+ an PB0 und D- an PB1 gelegt hab.

...
#define USB_CFG_IOPORTNAME B
#define USB_CFG_DMINUS_BIT 1
#define USB_CFG_DPLUS_BIT 0
#define USB_CFG_CLOCK_KHZ 12000
...

Die Fuses hab ich auf low:0xff & hight:0xd9 gesetzt.
An XTAL1 und XTAL2 hab ich nen 12MHZ Quarz gehängt.

mfg
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren