Forum: Mikrocontroller und Digitale Elektronik Windows treiber USB controller


von Peterle A. (Firma: keine) (wanderameise)


Lesenswert?

habe hier eine Platine mit einem At90can und einem USB chip von 
embedded-projekts.net (octopus). Für XP existieren treiber die auf der 
libusb-win32 bibliothek basieren.Ich denke mal, diese sind nicht unter 
win7 verwendbar.
Wie aufwendig ist es, solch einen treiber zu schreiben?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Erheblich.

Unter Windows 7 werden die XP-Treiber nur dann nicht verwendbar sein, 
wenn das Windows 7 eine 64-Bit-Version ist, aber Du könntest ja mal 
nachforschen, ob es bereits eine 64-Bit-Portierung von libusb für 
Windows gibt.

von fchk (Gast)


Lesenswert?

Wenn Dein USB-Device eine Standard-USB Geräteklasse implementiert (z.B. 
HID, CDC oder Mass Storage), dann brauchst Du keinen Windows 
Kerneltreiber, weil Windows das alles schon mitbringt. Beispiele dafür 
gibts bei Atmel. Maximal kann es Dir passieren, daß Du ein .inf-File 
schreiben mußt (bei CDC), aber das geht auch mit notepad.exe

fchk

von Lupin (Gast)


Lesenswert?

libusb gibt es auch für Win7 64bit - aber der Treiber ist nicht digital 
signiert, da muss man dann tricksen.

von ameise (Gast)


Lesenswert?

ja benutze ein 64 bit OS. es gibt tatsächlich einen 64 bit fix für die 
libusb. werde das mal testen.
die inf datei müsste eben angepasst werden. da stellt sich die frage wie 
trivial das ganze ist. evtl hat ja jemand ahnung und kann was dazu 
sagen:
1
[Version]
2
Signature = "$Chicago$"
3
provider  = %manufacturer%
4
DriverVer = 03/09/2005,0.1.10.1
5
CatalogFile = octopus.cat
6
7
Class = LibUsbDevices
8
ClassGUID = {EB781AAF-9C70-4523-A5DF-642A87ECA567}
9
10
[ClassInstall]
11
AddReg=ClassInstall.AddReg
12
13
[ClassInstall32]
14
AddReg=ClassInstall.AddReg
15
16
[ClassInstall.AddReg]
17
HKR,,,,"LibUSB-Win32 Devices"
18
HKR,,Icon,,"-20"
19
20
[Manufacturer]
21
%manufacturer%=Devices
22
23
;--------------------------------------------------------------------------
24
; Files
25
;--------------------------------------------------------------------------
26
27
[SourceDisksNames]
28
1 = "Libusb-Win32 Driver Installation Disk",,
29
30
[SourceDisksFiles]
31
libusb0.sys = 1,,
32
libusb0.dll = 1,,
33
34
[DestinationDirs]
35
LIBUSB.Files.Sys = 10,System32\Drivers
36
LIBUSB.Files.Dll = 10,System32
37
38
[LIBUSB.Files.Sys]
39
libusb0.sys
40
41
[LIBUSB.Files.Dll]
42
libusb0.dll
43
44
;--------------------------------------------------------------------------
45
; Device driver
46
;--------------------------------------------------------------------------
47
48
[LIBUSB_DEV]
49
CopyFiles = LIBUSB.Files.Sys, LIBUSB.Files.Dll
50
AddReg    = LIBUSB_DEV.AddReg
51
52
[LIBUSB_DEV.NT]
53
CopyFiles = LIBUSB.Files.Sys, LIBUSB.Files.Dll
54
55
[LIBUSB_DEV.HW]
56
DelReg = LIBUSB_DEV.DelReg.HW
57
58
[LIBUSB_DEV.NT.HW]
59
DelReg = LIBUSB_DEV.DelReg.HW
60
61
[LIBUSB_DEV.NT.Services]
62
AddService = libusb0, 0x00000002, LIBUSB.AddService
63
64
[LIBUSB_DEV.AddReg]
65
HKR,,DevLoader,,*ntkern
66
HKR,,NTMPDriver,,libusb0.sys
67
68
[LIBUSB_DEV.DelReg.HW]
69
HKR,,"LowerFilters"
70
71
;--------------------------------------------------------------------------
72
; Services
73
;--------------------------------------------------------------------------
74
75
[LIBUSB.AddService]
76
DisplayName    = "LibUsb-Win32 - Kernel Driver 03/09/2005, 0.1.10.1"
77
ServiceType    = 1
78
StartType      = 3
79
ErrorControl   = 0
80
ServiceBinary  = %12%\libusb0.sys
81
82
;--------------------------------------------------------------------------
83
; Devices
84
;--------------------------------------------------------------------------
85
86
[Devices]
87
"OctopusUSB Interface Converter and I/O Extension"=LIBUSB_DEV, USB\VID_1781&PID_0c65
88
89
[Strings]
90
manufacturer = "Embedded Projects"

von ameise (Gast)


Lesenswert?

so, es hat tatsächlich geklappt mit dem 64 bit fix für WIN7. das ganze 
nennt sich LIBUSB64Fix.
gruß

von DyoKo (Gast)


Lesenswert?

bei mir hat der fix nur alle USB-ports gekillt.
nichts neues wurde erkannt und altes wurde nach neustart auch nicht mehr 
erkannt.
einzige lösung: ps2maus und systemwiederherstellung.

oder hab ich was falsch gemacht?
hab 3) nicht gemacht.wäre das wichtig gewesen?

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
Noch kein Account? Hier anmelden.