Поделиться через


Тесты контроллера I2C в MITT

Тестовые модули I2C, включенные в пакет программного обеспечения MITT, можно использовать для тестирования передачи данных для контроллера I2C и его драйвера. Доска MITT выступает в качестве клиентского устройства, подключенного к шине I2C.

Подготовка к работе

Настройка оборудования.

Изображение установки оборудования MITT I2C.

Интерфейс шины Закрепление ACPI и схемы решение Подключение ion
I2C Все необходимые строки (SCL, SDA и GND) Таблица ACPI Простой блок мужчин (на отладочной доске)
  1. Подключение адаптер I2C в JB1 на доске MITT.

    Изображение заголовка MITT I2C.

  2. Используйте перемычку на заголовок I2 C (выше JB1), чтобы выбрать правильное напряжение I2C между 3,3V и 1,8V. На этом изображении выбрано значение 1.8V.

  3. Подключение SCL, SDA и GND закрепление на плате адаптера к предоставленным строкам SCL, SDA и GND в системе в ходе тестирования.

    Изображение адаптера I2C.

  4. Используйте перемычку на плате адаптера I2C, чтобы выбрать правильное напряжение I2C между 3,3V и 1,8V. На этом изображении выбрано значение 1.8V.

  5. На доске MITT установите переключатель SW0 на высокую позицию. Эта позиция включает режим по умолчанию для I2C при использовании MITT.

    Изображение SW0 на доске MITT.

  6. Нажмите кнопку RESET для цикла питания доски MITT. Если проводные подключения к контроллеру I2C верны, включите индикатор LD7 (SDA) и LD6 (индикатор SCL). Если светодиодный индикатор не включается, возникает проблема с проводкой, так как SDA или SCL или оба вытягиваются низко.

Конфигурация тестового драйвера и ACPI

Выполните следующие действия в системе под тестом с контроллером I2C:

  1. Установите драйвер WITTTest, включенный в пакет программного обеспечения MITT, выполнив следующую команду:

    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
    

    Примечание.

    PnpUtil.exe включен в %SystemRoot%\System32.

  2. Измените системный ACPI и включите эту таблицу ASL. Вы можете использовать компилятор Microsoft ASL.

    Примечание.

    Измените значение \\_SB_. I2C2" — имя записи ACPI для проверяемого контроллера I2C.

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

    Примечание.

    Для выполнения тестов MITT I2C требуется только TP1-3. TP4 и TP5 являются необязательными целевыми объектами.

Тесты автоматизации I2C

  1. Создайте папку в системе под тестом.

  2. Скопируйте двоичные файлы TAEF в папку и добавьте его в переменную среды PATH. Необходимые двоичные файлы TAEF находятся в %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\TAEF.

  3. Скопируйте Muttutil.dll и Mitti2ctest.dll из пакета программного обеспечения MITT в папку.

  4. Просмотрите все тесты MITT I2C с помощью параметра /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
    

Теперь вы готовы к выполнению тестов I2C. Вы можете запустить один тест, все тесты одновременно или выполнить тесты вручную.

  • Выполните один тест с помощью параметра /name:<test name>. Эта команда запускает тест BasicIORead:

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

  • Выполните все тесты с помощью этой команды:

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

  • Запустите тесты вручную с помощью средства SPBCmd.exe, включенного в пакет программного обеспечения MITT.

Схема адаптера I2C

Схема схемы адаптера I2C.