Forum: Mikrocontroller und Digitale Elektronik USB PIC Controller Windows 10 64 bit


von Ingo S. (ets_coder)


Lesenswert?

Für die USB Verbindung eines PIC Controllers PIC18F2550 mit unserer 
Anwendungssoftware unter Windows XP und 7  haben wir bisher ein USB MCD 
Device verwendet (mpusbapi.dll). Also per Microchip Custom USB Device 
verbunden. Große Hilfe bei der damaligen Entwicklung war mir die Seite 
www.sprut.de. Entwickelt wurde alles mit der MPLAB IDE V8.80.

Nun möchte ich unsere Komponenten und Software auch für Windows 8, 10 
nutzbar machen, leider läuft da nun der alte Microchip Treiber wegen 
fehlender Signierung nicht mehr. Bei meiner bisherigen Suche im Netz zu 
alternativen Lösungen bin ich nicht fündig geworden, bin auch mit 
Englisch nicht so perfekt.

Gibt es inzwischen mit der neuen  MPLAB X IDE Lösungen für USB die auch 
unter Windows 10 funktionieren? Also wo ich USB in einem PIC18F2550 zum 
laufen bekomme. Ein CDC Device per emulierten Comport möchte ich als 
Lösung nicht nutzen. Ich blicke bei der MPLAB X IDE im Moment noch nicht 
durch, alles anders als die alte IDE die ich bisher hatte.

Hat jemand vielleicht ein Demo Projekt, nur zur Grundlagenforschung?

von K. J. (Gast)


Lesenswert?

Wen Microchip keinen neuen Treiber anbietet wirst du da ein problem 
haben, Sprut nutzt den Org. Treiber mit angepasster config

von Stefan F. (Gast)


Lesenswert?

Schau mal hier http://stefanfrings.de/avr_tools/libusb.html

Da geht es zwar um einen anderen Treiber, aber ich schätze, das dieser 
Workaround auch auf deinen Treiber anwendbar ist.

von Ingo S. (ets_coder)


Lesenswert?

ahh, OK Danke !
werde mal schauen...

von Ingo S. (ets_coder)


Lesenswert?

hmmm, scheinbar auch damit dasselbe Problem wie mit dem microchip 
Driver. Wir geben unsere Sachen ja auch an Kunden, da kann ich Dinge wie 
"Treibersignatur deaktivieren" nicht anbieten.

Als letzte Rettung wäre dann ja nur ein CDC USB Device, ist aber auch 
wieder kompliziert, weil man da immer in dieselbe USB Busche nehmen 
muss, um dieselbe Comport Nummer zu bekommen.

Weiterhin hatte ich bei Windows 10 das Problem das der PIC per CDC nicht 
immer sauber erkannte wird. Unter Windows 7 war das immer perfekt.

von Volker S. (vloki)


Lesenswert?

Wäre HID eine Option?

von Ingo S. (ets_coder)


Lesenswert?

Soweit ich weiß ist HID extrem langsam, unsere Software braucht einen 
gewissen Datendurchsatz

von Volker S. (vloki)


Lesenswert?

Die theoretischen 64kB/s werden wohl nicht ereichbar sein, aber da geht 
schon was.

von Frank K. (fchk)


Lesenswert?

Du kannst Microsoft WinUSB benutzen. Dafür musst Du im Device einen 
zusätzlichen Deskriptor anlegen, damit Windows weiß, dass es den 
WinUSB-Treiber laden soll.

Siehe

https://msdn.microsoft.com/en-us/library/windows/hardware/ff540196(v=vs.85).aspx

für die Windows-Seite

und

https://msdn.microsoft.com/en-us/windows/hardware/gg463179.aspx

für die Deskriptoren.

fchk

von Ingo S. (ets_coder)


Lesenswert?

Hi Frank,
vielen Dank!
Ich hatte schon bisschen über WinUSB gelesen, mal gucken ob ich das
irgendwie hinbekomme. Hast Du da zufällig irgendwelche Demos?

Am Ende will ich ja wie bei mpusbapi.dll damit irgendwie einen Bootlader
und das eigentliche Programm für den PIC18F2550 hinbekommen. Die Windows
Seite ist kein Problem, auf der PIC Seite weis ich nicht so recht wie
und was da nun für den USB Kram einzubinden ist.

von Frank K. (fchk)


Lesenswert?


von Ingo S. (ets_coder)


Lesenswert?

...Danke, ich schaue es an...

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.