Hallo allerseits, ich versuche gerade zwei gleiche USB-Devices (PIC18F2550) über die mpusbapi.dll unter Windows zu steuern. Dazu habe ich die Seriennummer-Funktion aktiviert und den Geräten unterschiedliche Seriennummern gegeben. Die werden im Gerätemanager auch korrekt angezeigt. Als ich nur einen PIC benutzt habe war alles unproblematisch, aber jetzt mit zwei PICs muß ich einen PIC auswählen können. Leider habe ich trotz ausgiebiger Suche keine Möglichkeit gefunden einen bestimmten PIC auszuwählen und zu steuern. Übersehe ich da irgendetwas? Gruß Gerhard
Keine Ahnung, aber in einer vier Jahre alten Version auf GitHub finde ich diesen Kommentar:
1 | |
2 | |
3 | |
4 | |
5 | |
6 | |
7 | |
8 | |
9 | |
10 | |
11 | |
12 | |
13 | |
14 | |
15 | |
16 | |
17 | |
18 | |
19 | |
20 | |
21 | |
22 | |
23 | |
24 | |
25 | |
26 | |
27 | |
Gast
#5043243
Beim Aufruf: myOutPipe:= _MPUSBOpen(selection,vid_pid,out_pipe,MP_WRITE,0); ist selection = 0 das erste Gerät, Selection = 1 das Zweite usw.. So funktioniert's bei mir jedenfalls. Verwende USB4ALL von Sprut. Gruss Chregu
Sowas in der Art hatte ich befürchtet. Wenn man "instance" mit "Exemplar" übersetzt, dann wird es klar. Das funktioniert bei mir jetzt auch. Die Seriennummer werde ich wieder raus machen, denn die muss ich dann aus der Registry lesen und dem korrekten PIC über die Reihenfolge der Geräte im Gerätemanager zuordnen. In der DLL habe ich zumindestens keine entsprechende Funktion gefunden. Da spendiere ich eine Funktion in der Firmware, die ich aufrufen kann und die mir die Seriennummer zurück liefert. Danke für Eure Unterstützung. Gruß Gerhard
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.