Partager via


Tests de contrôleur I2C dans MITT

Les modules de test I2C inclus dans le package logiciel MITT peuvent être utilisés pour tester les transferts de données pour un contrôleur I2C et son pilote. La carte MITT agit en tant qu’appareil client connecté au bus I2C.

Avant de commencer

Configuration matérielle

Image de la configuration matérielle MITT I2C.

Interface de bus Épingler ACPI et schémas solution de Connecter ion
I2C Toutes les lignes nécessaires (SCL, SDA et GND) Table ACPI Bloc mâle simple (sur la carte de débogage)
  1. Connecter l’adaptateur I2C à JB1 sur la carte MITT.

    Image de l’en-tête MITT I2C.

  2. Utilisez le jumper sur l’en-tête I2C (ci-dessus JB1) pour sélectionner la tension I2C correcte entre 3,3V et 1,8V. Dans cette image, la version 1.8V est sélectionnée.

  3. Connecter broches SCL, SDA et GND sur la carte d’adaptateur aux lignes SCL, SDA et GND exposées sur le système testés.

    Image de l’adaptateur I2C.

  4. Utilisez le jumper sur la carte d’adaptateur I2C pour sélectionner la tension I2C correcte entre 3,3V et 1,8V. Dans cette image, la version 1.8V est sélectionnée.

  5. Sur la carte MITT, définissez sw0 sur la position haute. Cette position active le mode par défaut pour I2C lorsque le MITT est alimenté.

    Image de SW0 sur le tableau MITT.

  6. Utilisez le bouton RESET pour alimenter la carte MITT. Si les connexions de câble au contrôleur I2C sont correctes, LD7 (indicateur SDA) et LD6 (indicateur SCL) s’activent. Si la LED n’est pas activée, il existe un problème de câblage, car SDA ou SCL, ou les deux sont tiré bas.

Tester la configuration du pilote et de l’ACPI

Effectuez ces étapes sur le système testé avec le contrôleur I2C :

  1. Installez le pilote WITTTest inclus dans le package logiciel MITT en exécutant cette commande :

    pnputil -a WittTest.inf

    Microsoft PnP Utility
    
    Processing inf :            WittTest.inf
    Driver package added successfully.
    Published name :            oem6.inf
    
    Total attempted:              1
    Number successfully imported: 1
    

    Remarque

    PnpUtil.exe est inclus dans %SystemRoot%\System32.

  2. Modifiez l’ACPI système et incluez cette table ASL. Vous pouvez utiliser le compilateur Microsoft ASL.

    Remarque

    Modifiez « \\_SB_. I2C2 " au nom d’entrée ACPI pour le contrôleur I2C à tester.

    //TP1 100Khz Standard Target Device(TP1)
    Device(TP1) {
        Name (_HID, "STK0001")
        Name (_CID, "WITTTest")
        Method(_CRS, 0x0, NotSerialized)
        {
          Name (RBUF, ResourceTemplate ()
          {
            I2CSerialBus ( 0x11, ControllerInitiated, 100000,AddressingMode7Bit, "\\_SB_.I2C2",,, , )
          })
          Return(RBUF)
        }
    }
    
    //TP2 400Khz  Fast Target
    Device(TP2) {
        Name (_HID, "STK0002")
        Name (_CID, "WITTTest")
        Method(_CRS, 0x0, NotSerialized)
        {
          Name (RBUF, ResourceTemplate ()
          {
            I2CSerialBus ( 0x12, ControllerInitiated, 400000,AddressingMode7Bit, "\\_SB_.I2C2",,, , )
          })
          Return(RBUF)
        }
    }
    
    //TP3 1 Mhz  FastPlus Target
    Device(TP3) {
        Name (_HID, "STK0003")
        Name (_CID, "WITTTest")
        Method(_CRS, 0x0, NotSerialized)
        {
          Name (RBUF, ResourceTemplate ()
          {
            I2CSerialBus ( 0x13, ControllerInitiated, 1000000,AddressingMode7Bit, "\\_SB_.I2C2",,, , )
          })
          Return(RBUF)
        }
    }
    
    //TP4 1.4 Mhz High Speed, optional target
    Device(TP4) {
        Name (_HID, "STK0004")
        Name (_CID, "WITTTest")
        Method(_CRS, 0x0, NotSerialized)
        {
          Name (RBUF, ResourceTemplate ()
          {
            I2CSerialBus ( 0x14, ControllerInitiated, 1400000,AddressingMode7Bit, "\\_SB_.I2C2",,, , )
          })
          Return(RBUF)
        }
    }
    
    //TP5 3.4 Mhz High Speed, optional target
    Device(TP5) {
        Name (_HID, "STK0005")
        Name (_CID, "WITTTest")
        Method(_CRS, 0x0, NotSerialized)
        {
          Name (RBUF, ResourceTemplate ()
          {
            I2CSerialBus ( 0x15, ControllerInitiated, 3400000,AddressingMode7Bit, "\\_SB_.I2C2",,, , )
          })
          Return(RBUF)
        }
    }
    

    Remarque

    Seul TP1-3 est requis pour exécuter des tests MITT I2C. TP4 et TP5 sont des cibles facultatives.

Tests d’automatisation I2C

  1. Créez un dossier sur le système sous test.

  2. Copiez les fichiers binaires TAEF dans le dossier, puis ajoutez-le à votre variable d’environnement PATH. Les fichiers binaires TAEF requis sont dans %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\TAEF .

  3. Copiez Muttutil.dll et Mitti2ctest.dll à partir du package logiciel MITT dans le dossier.

  4. Affichez tous les tests MITT I2C à l’aide de l’option /list :

    "C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\te" MITTI2CTest.dll /list

    Test Authoring and Execution Framework v3.7k for x64
    
    
            C:\Program Files(x86)\MITT\x64\MITTI2CTest.dll
                MITTI2CTest
                    MITTI2CTest::BasicIORead
                    MITTI2CTest::BasicIOWrite
                    MITTI2CTest::BasicIOSeq
                    MITTI2CTest::BasicIOKernel
                    MITTI2CTest::DeviceNACK
                    MITTI2CTest::LockUnlock
                    MITTI2CTest::CancelRead
                    MITTI2CTest::CancelWrite
                    MITTI2CTest::CancelSequence
                    MITTI2CTest::ClockStretching
                    MITTI2CTest::PerfRead
                    MITTI2CTest::PerfWrite
                    MITTI2CTest::PerfSequence
                    MITTI2CTest::BusRecovery
                    MITTI2CTest::Power
                    MITTI2CTest::Stress
    

Vous êtes maintenant prêt à exécuter des tests I2C. Vous pouvez exécuter un seul test, tous les tests à la fois ou exécuter manuellement des tests.

  • Exécutez un test unique à l’aide de l’option /name :<test name>. Cette commande exécute le test BasicIORead :

    "C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\te" MITTI2CTest.dll /name:MITTI2CTest::BasicIORead

  • Exécutez tous les tests à l’aide de cette commande :

    "C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\te" MITTI2CTest.dll

  • Exécutez des tests manuellement à l’aide de SPBCmd.exe outil inclus dans le package logiciel MITT.

Schéma de l’adaptateur I2C

Diagramme schématique de l’adaptateur I2C.