Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I det här avsnittet beskrivs begrepp och verktyg för utveckling av USB-drivrutiner. Avsnittet gäller för utvecklare som är nybörjare på drivrutinsutveckling och som vill implementera en drivrutin för en USB-enhet som Microsoft inte tillhandahåller en inkorgsdrivrutin för. Dessa drivrutiner kallas för en USB-klientdrivrutin i den här dokumentationen. Avsnitten i det här avsnittet beskriver usb-begrepp på hög nivå och innehåller stegvisa instruktioner om hur du utför vanliga uppgifter för en USB-klientdrivrutin. Detaljerad information om dessa begrepp finns i USB-specifikationer på USB-dokument.
Drivrutinsutvecklare måste ha kodningserfarenhet i programmeringsspråket C++ och förstå begreppen funktionspekare, återanropsfunktioner och händelsehanterare. Om du skriver en drivrutin baserat på User-Mode Driver Framework måste utvecklaren känna till C++ och COM.
Utbildningsväg för utvecklare av USB-klientdrivrutiner
-
- Lär dig mer om branschspecifikationen och olika komponenter (enhet, värdstyrenhet och hubb) i arkitekturen. Det är viktigt att förstå dataflödesmodellen, hur värddatorn och enheten kommunicerar med varandra och formatet på de förfrågningar som enheten förväntar sig.
Skaffa en USB-testenhet.
Ha en USB-enhet och dess maskinvaruspecifikation. Specifikationen beskriver enhetsfunktioner och de leverantörskommandon som stöds. Använd specifikationen för att fastställa funktionerna i enhetsdrivrutinen och de relaterade designbesluten.
Använd OSR USB FX2 learning kit om du är ny inom USB-drivrutinsutveckling. Satsen är den lämpligaste för att studera USB-exempel som ingår i den här dokumentationsuppsättningen.
Ha Microsoft USB-testverktyg (MUTT) enheter. MUTT-maskinvara kan köpas från JJG Technologies. Enheten har inte installerad inbyggd programvara installerad. Om du vill installera inbyggd programvara laddar du ned MUTT-programvarupaketet. Mer information finns i dokumentationen som ingår i paketet.
Studera USB-enhetslayouten och de relaterade USB-beskrivningarna.
- Beskriv dina enhetsfunktioner genom att läsa konfigurationsbeskrivningen, gränssnittsbeskrivningar för varje alternativinställningar som stöds och deras slutpunktsbeskrivningar. Genom att använda USBView kan utvecklaren bläddra bland alla USB-styrenheter och USB-enheter som är anslutna till dem och även inspektera enhetskonfigurationen.
Välj en drivrutinsmodell för att utveckla en USB-klientdrivrutin
- Avgör om drivrutinen ska vara en anpassad drivrutin eller använda någon av de Drivrutiner som tillhandahålls av Microsoft baserat på målenhetens design. Välj den bästa drivrutinsmodellen och beskriv de funktioner som stöds av varje modell.
Granska USB-drivrutinsstack och drivrutinsutvecklingskoncept från Microsoft.
- USB-drivrutiner på värdsidan i Windows.
- Begrepp för alla drivrutinsutvecklare.
- Begrepp för alla USB-utvecklare.
- Enhetsnoder och enhetsstackar.
- Utveckla drivrutiner med Windows Driver Foundation: Referensbok av Penny Orwick och Guy Smith.
- USB-drivrutinsexempel.
- Förstå grunderna i hur drivrutiner fungerar i Windows-operativsystem. Genom att känna till grunderna kan du fatta lämpliga designbeslut och effektivisera utvecklingsprocessen.
- Skilja mellan drivrutinsarkitekturmodeller för användarläge och kernelläge.
- Förstå drivrutinsinläsning och hur Windows organiserar PnP-enheter (Plug and Play) i ett enhetsträd och enhetsnoder. Utvecklaren bör också förstå hur PnP-hanteraren skapar enhetsstackar och var drivrutinen och dess enhetsobjekt placeras i enhetsstacken.
Förbered utvecklings- och felsökningsmiljön.
- Installera det senaste Windows Driver Kit (WDK).
- Installera Microsoft Visual Studio.
- Konfigurera för felsökning.
- Kontrollera att de rubriker och bibliotek som krävs av en USB-klientdrivrutin är tillgängliga.
- Om du skriver en drivrutinsfelsökning i kernelläge på värd- och måldatorer via ett Ethernet-nätverk måste 1394-kabel, USB 2.0- eller 3.0-felsökningskabel eller en null-modemkabel konfigureras.
- Om du skriver en drivrutin i användarläge är felsökningsprogram i användarläge tillgängliga i Microsoft Visual Studio-miljön. Utvecklaren bör känna till hur man ansluter till en process eller startar en process under felsökningsprogrammet.
Skriv din första drivrutin.
- Så här skriver du din första USB-klientdrivrutin (KMDF).
- Så här skriver du din första USB-klientdrivrutin (UMDF).
- Skriv, skapa och installera din första USB-klientdrivrutin med hjälp av DE USB-mallar som ingår i Visual Studio 2012. Utvecklaren bör kunna beskriva ramverksdrivrutiner, enhets- och köobjekt och förstå hur ramverket kommunicerar med din drivrutin.
Utöka din drivrutin genom att skicka en USB-kontrollöverföringsbegäran.
- Skicka standardkontrollbegäranden och leverantörskommandon till enheten. Mer information finns i Så här skickar du en USB-kontrollöverföring.
Utöka drivrutinen så att WDF USB I/O-målobjekt används för att utföra USB-dataöverföringar.
- Utöka drivrutinen för att utföra vanliga uppgifter enligt beskrivningen i Vanliga uppgifter för USB-klientdrivrutiner.
Community-resurser för USB
Microsoft Windows USB Core Team Blog
Kolla in inlägg skrivna av Microsoft USB Team. Bloggen fokuserar på Windows USB-drivrutinsstacken som fungerar med olika USB-värdstyrenheter och USB-hubbar som finns i Windows-datorer. En användbar resurs för UTVECKLARE av USB-klientdrivrutiner och USB-maskinvarudesigners förstår implementeringen av drivrutinsstacken, löser vanliga problem och förklarar hur du använder verktyg för att samla in spårningar och loggfiler.
-
Diskussionslista som hanteras av OSR Online för utvecklare av kernellägesdrivrutiner.
Windows Dev-Center för maskinvaruutveckling
Windows Driver Kit, se till att din produkt är tillförlitlig och kompatibel med Windows via Windows Hardware Lab Kit, lär dig windows-drivrutinsexempel.