Condividi tramite


Test del controller I2C in MITT

I2moduli di test C inclusi nel pacchetto software MITT possono essere usati per testare i trasferimenti di dati per un controller I2C e il relativo driver. La scheda MITT funge da dispositivo client connesso al bus I2C.

Operazioni preliminari

Configurazione hardware

Immagine della configurazione hardware I2C DI MITT.

Interfaccia del bus Pin-out ACPI e schemi soluzione Connessione ion
I2C Tutte le righe necessarie (SCL, SDA e GND) Tabella ACPI Blocco maschile semplice (nella scheda di debug)
  1. Connessione l'adattatore I2C a JB1 sulla scheda MITT.

    Immagine dell'intestazione MITT I2C.

  2. Usare il jumper sull'intestazione I2C (sopra JB1) per selezionare la tensione I2C corretta tra 3,3 V e 1,8V. In questa immagine è selezionata l'opzione 1.8V.

  3. Connessione i pin SCL, SDA e GND sulla scheda adattatore alle linee SCL, SDA e GND esposte nel sistema sottoposto a test.

    Immagine dell'adattatore I2C.

  4. Usare il jumper sulla scheda adattatore I2C per selezionare la tensione I2C corretta tra 3,3 V e 1,8V. In questa immagine è selezionata l'opzione 1.8V.

  5. Sulla scheda MITT impostare SW0 sulla posizione alta. Questa posizione abilita la modalità predefinita per I2C quando il MITT è alimentato.

    Immagine di SW0 sulla scheda MITT.

  6. Usare il pulsante RE edizione Standard T per accendere la scheda MITT. Se le connessioni di collegamento al controller I2C sono corrette, attivare LD7 (indicatore SDA) e LD6 (indicatore SCL). Se uno dei LED non viene attivato, si verifica un problema di cablaggio perché SDA o SCL o entrambi vengono estratti in basso.

Test driver e configurazione ACPI

Eseguire questi passaggi nel sistema sottoposto a test con il controller I2C:

  1. Installare il driver WITTTest incluso nel pacchetto software MITT eseguendo questo comando:

    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
    

    Nota

    PnpUtil.exe è incluso in %SystemRoot%\System32.

  2. Modificare l'ACPI di sistema e includere questa tabella ASL. È possibile usare il compilatore Microsoft ASL.

    Nota

    Modificare "\\_SB_. Da I2C2" al nome della voce ACPI per il controller I2C da testare.

    //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)
        }
    }
    

    Nota

    Solo TP1-3 sono necessari per eseguire test MITT I2C. TP4 e TP5 sono destinazioni facoltative.

Test di automazione I2C

  1. Creare una cartella nel sistema sottoposto a test.

  2. Copiare i file binari TAEF nella cartella e quindi aggiungerli alla variabile di ambiente PATH. I file binari TAEF necessari si trovano in %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\TAEF .

  3. Copiare Muttutil.dll e Mitti2ctest.dll dal pacchetto software MITT alla cartella .

  4. Visualizzare tutti i test MITT I2C usando l'opzione /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
    

È ora possibile eseguire i test I2C. È possibile eseguire un singolo test, tutti i test contemporaneamente o eseguire manualmente i test.

  • Eseguire un singolo test usando l'opzione /name:<test name>. Questo comando esegue il test BasicIORead:

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

  • Eseguire tutti i test usando questo comando:

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

  • Eseguire i test manualmente usando SPBCmd.exe strumento incluso nel pacchetto software MITT.

Schema dell'adattatore I2C

Diagramma schema dell'adattatore I2C.