Condividi tramite


Lab 2: Creazione di un pacchetto di supporto della scheda personalizzato

Un BSP include un set di driver di dispositivo specifici per i componenti/siliconi usati nella scheda. Questi sono forniti dai fornitori di componenti/fornitori di siliconi, principalmente sotto forma di inf e file associati .sys/.dll.

Creare un nuovo pacchetto BSP (Board Support Package) quando:

  • Creazione di una nuova progettazione hardware

  • Sostituzione di un driver o di un componente in una progettazione hardware esistente

Indipendentemente dal fatto che si stia creando un nuovo provider di servizi di configurazione o modificando un provider di servizi di configurazione esistente, si diventa il proprietario. In questo modo è possibile decidere se consentire l'installazione degli aggiornamenti nelle schede.

Nel lab verrà creato un nuovo provider di servizi di configurazione basato su Raspberry Pi 2, rimuovendo il driver GPIO esistente e sostituendolo con la demo del driver GPIO di esempio GPIO: GPIO KMDF.

Creare una nuova cartella di lavoro BSP

  1. Da IoT Core Shell creare una cartella di lavoro BSP che si vuole modificare usando Add-IoTBSP.

    Add-IoTBSP MyRPi2
    (or) newbsp MyRPi2
    

Aggiungere pacchetti al manifesto della funzionalità

  1. Aprire il file manifesto della funzionalità per il nuovo BSP, C:\MyWorkspace\Source-arm\BSP\MyRpi2\MyRpi2FM.xml.

    In un'altra finestra aprire il manifesto della funzionalità Raspberry Pi 2 da usare come modello.

  2. Aggiungere i pacchetti di base (BasePackage).

    • Driver UEFI per la partizione di avvio (RASPBERRYPI.RPi2.BootFirmware.cab)

    • Driver necessari per UpdateOS (SV.PlatExtensions.UpdateOS.cab)

    • Driver di dispositivo obbligatori (bcm2836sdhc.cab, dwcUsbOtg.cab, rpiq.cab)

      Quando si crea un BSP personalizzato, in genere è necessario un driver di visualizzazione e un driver di archiviazione e talvolta un driver di rete.

    • Personalizzazioni specifiche del dispositivo

  3. Copiare nel layout del dispositivo e nei pacchetti della piattaforma (DeviceLayoutPackages, OEMDevicePlatformPackages).

    Si noti che sia il OEMDevicePlatform.xml che devicelayout.xml possono essere inseriti in un pacchetto, ad esempio DeviceLayout.MBR4GB. Lo stesso pacchetto può quindi essere specificato come input in entrambe le sezioni (ad esempio, in <OEMDevicePlatformPackages> e <DeviceLayoutPackages>). Per altre informazioni, vedere Layout del dispositivo.

  4. Copia nelle funzionalità (funzionalità).

    Copiare le funzionalità desiderate. Escludere tutti gli elementi che non si applicano al progetto.

    Ad esempio, copiare in ognuno dei driver tranne il driver GPIO esistente:

    <PackageFile Path="$(mspackageroot)\Retail\$(cputype)\$(buildtype)" Name="RASPBERRYPI.RPi2.GPIO.cab">
        <FeatureIDs>
          <FeatureID>RPI2_DRIVERS</FeatureID>
        </FeatureIDs>
    </PackageFile>
    

    Nota: per semplificare il raggruppamento dei pacchetti, è possibile combinarli in uno o più ID funzionalità. Ad esempio, tutti i driver facoltativi Raspberry Pi 2 usano l'ID funzionalità: RPI2_DRIVERS.

  5. Aggiungere il driver HelloBlinky

        <PackageFile Path="%PKGBLD_DIR%" Name="%OEM_NAME%.Drivers.HelloBlinky.cab">
          <FeatureIDs>
            <FeatureID>BLINKY_DRIVER</FeatureID>
          </FeatureIDs>
        </PackageFile>
    

Creare una nuova cartella del prodotto

  1. Creare una nuova cartella del prodotto funzionante, aggiungendo il nome BSP alla fine.

    newproduct ProductC MyRpi2
    

    Verrà creata la cartella , C:\MyWorkspace\Source-<arch>\Products\ProductCcollegata al nuovo provider di servizi di configurazione.

Aggiornare i file di configurazione del progetto

  1. Aggiornare il file di configurazione del test del prodotto usando Add-IoTProductFeature

    Add-IoTProductFeature ProductC Test BLINKY_DRIVER -OEM
    (or) addfid ProductC Test BLINKY_DRIVER -OEM
    

Compilare e testare l'immagine

Compilare l'immagine

  1. Dalla shell IoT Core creare l'immagine:

    buildimage ProductC Test
    

    In questo modo vengono creati i file binari del prodotto in C:\MyWorkspace\Build\<arch>\ProductC\Flash.ffu.

  2. Avviare Windows IoT Core Dashboard>Configurare un nuovo dispositivo>Personalizzato e passare all'immagine.

    Inserire la scheda Micro SD nel dispositivo, selezionarla, accettare le condizioni di licenza e fare clic su Installa. In questo modo l'immagine precedente viene sostituita con la nuova immagine.

  3. Inserire la scheda nel dispositivo IoT e avviarla.

    Dopo un breve periodo di tempo, il dispositivo dovrebbe essere avviato automaticamente e dovrebbe essere visualizzata l'app.

Verificare se il driver funziona

  1. Usare le procedure di test nel lab Hello, Blinky! per testare il driver.

Layout del dispositivo

Passaggi successivi

Lab 3: Aggiornare le app