Steg 1:Bussuppräkning
1. Värdstyrenhetens drivrutin räknar upp USB-bussen.
2. Värdstyrenhetens drivrutin identifierar alla USB-enheter som är anslutna till bussen.
3. Värdstyrenhetens drivrutin skapar en enhetsbeskrivning för varje USB-enhet.
4. Värdstyrenhetens drivrutin tilldelar en unik adress till varje USB-enhet.
Steg 2:Enhetsuppräkning
1. Värdstyrenhetens drivrutin laddar enhetsdrivrutinen för varje USB-enhet.
2. Enhetsdrivrutinen initierar USB-enheten.
3. Enhetsdrivrutinen skapar ett enhetsobjekt för USB-enheten.
4. Enhetsobjektet läggs till i enhetsträdet.
Steg 3:Konfigurationsuppräkning
1. Värdstyrenhetens drivrutin laddar konfigurationsbeskrivningen för varje USB-enhet.
2. Värdstyrenhetens drivrutin väljer en konfiguration för varje USB-enhet.
3. Värdstyrenhetens drivrutin tilldelar ett konfigurationsnummer till varje USB-enhet.
Steg 4:Gränssnittsuppräkning
1. Värdstyrenhetens drivrutin laddar gränssnittsbeskrivningen för varje USB-enhet.
2. Värdstyrenhetens drivrutin väljer ett gränssnitt för varje USB-enhet.
3. Värdstyrenhetens drivrutin tilldelar ett gränssnittsnummer till varje USB-enhet.
Steg 5:Slutpunktsuppräkning
1. Värdstyrenhetens drivrutin laddar slutpunktsbeskrivningen för varje USB-enhet.
2. Värdstyrenhetens drivrutin identifierar alla slutpunkter som är associerade med det valda gränssnittet.
3. Värdkontrollerns drivrutin skapar ett ändpunktsobjekt för varje ändpunkt.
4. Slutpunktsobjektet läggs till enhetsobjektet.
USB-uppräkningsprocessen är klar när alla USB-enheter som är anslutna till bussen har räknats upp.