Wenn Du auf Deinem USB-Controller die Standardgeräteklasse für serielle
Schnittstellen (CDC) emulierst, benötigst Du nur eine *.inf-Datei, und
der mit Windows mitgelieferte Standardtreiber wird verwendet.
Ein Beispiel dafür liefert LPCUSB*, das ist ein USB-Stack für einen
LPC2148.
Zitat:
On Windows XP, the device uses the built-in usbser.sys
driver and just needs an .inf file.
The extra COM port simply shows up as a COMx device.
On Linux, the USB serial port is handled by the
cdc_acm module, which causes the serial port to
show up as /dev/ttyACMx.
Im Zusammenhang mit einem PIC wird das ganze auch erwähnt**:
Es gibt bei Microchip mehrere Code-Beispiele wie
man Programme für den PIC schreibt.
Als HID (Human Interface Device), über eine spezielle
DLL von Microchip
* oder als CDC-Device (Communication Device Class).
* Letzteres habe ich hier benutzt. CDC arbeitet über
* einen virtuellen COM-Port. Man schreibt seine Programme
* so als würde man eine serielle Schnittstelle ansprechen.
* Für CDC ist kein spezieller Treiber erforderlich. Alles
* läuft über die USBSER.SYS. Die ist bei W98 und höher dabei.
* Das CDC-Demo von Microchip läuft nur mit W2000/XP.
* Für W98 gibt es leider keine INF-Datei zum installieren
* des Treibers bei Microchip.
Dasselbe wird recht ausführlich auch für AT91SAM7X beschrieben***, auch
dort sollte sich eine passende INF-Datei finden lassen.
Also: Implementiere auf dem AT90USB1287 ein CDC-Device, dann benötigst
Du nur noch 'ne *.inf-Datei.
Viel Erfolg!
*) http://wiki.sikken.nl/index.php?title=LPCUSB#USB_serial_port
**) http://www.holger-klabunde.de/usb/18f2550.htm
***)http://www.freertos.org/portsam7xlwIP.html