Pruebas de controlador I2C en MITT
Los módulos de prueba I2C que se incluyen en el paquete de software MITT se pueden usar para probar las transferencias de datos de un controlador I2C y su controlador. La placa MITT actúa como un dispositivo cliente conectado al bus I2C.
Antes de empezar
- Obtenga una placa MITT y una placa adaptadorA I2C. Consulte Comprar hardware para usar MITT.
- Descargue el paquete de software MITT. Instálelo en el sistema en prueba.
- Instale el firmware de MITT en la placa MITT. Consulte Introducción a MITT.
Configuración de hardware
Interfaz de bus | Anclar | ACPI y esquemas | solución Conectar ion |
---|---|---|---|
I2C | Todas las líneas necesarias (SCL, SDA y GND) | Tabla ACPI | Bloque macho simple (en la placa de depuración) |
Conectar el adaptador I2C a JB1 en la placa MITT.
Utilice el jumper en el encabezado I2C (por encima de JB1) para seleccionar el voltaje I2C correcto entre 3.3V y 1.8V. En esta imagen, se selecciona 1.8V.
Conectar patillas SCL, SDA y GND en la placa adaptadora a las líneas SCL, SDA y GND expuestas en el sistema sometido a prueba.
Utilice el jumper en la placa del adaptador I2C para seleccionar el voltaje I2C correcto entre 3.3V y 1.8V. En esta imagen, se selecciona la versión 1.8V.
En la placa MITT, establezca el conmutador SW0 a la posición alta. Esta posición habilita el modo predeterminado para I2C cuando el MITT está encendido.
Use el botón RESET para encender el ciclo de la placa MITT. Si las conexiones de cable al controlador I2C son correctas, encendido LD7 (indicador SDA) y LD6 (indicador SCL). Si el LED no se activa, hay un problema de cableado porque SDA o, SCL, o ambos se extraen bajo.
Configuración del controlador de prueba y ACPI
Realice estos pasos en el sistema en prueba que tiene el controlador I2C:
Instale el controlador WITTTest incluido en el paquete de software MITT ejecutando este 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
Modifique el ACPI del sistema e incluya esta tabla ASL. Puede usar el compilador ASL de Microsoft.
Nota:
Cambie "\\_SB_. I2C2" al nombre de entrada ACPI del controlador I2C que se va a probar.
//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 se requiere TP1-3 para ejecutar pruebas MITT I2C. TP4 y TP5 son destinos opcionales.
Pruebas de automatización de I2C
Cree una carpeta en el sistema en prueba.
Copie los archivos binarios de TAEF en la carpeta y agréguelos a la variable de entorno PATH. Los archivos binarios de TAEF necesarios se encuentran en %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\TAEF .
Copie Muttutil.dll y Mitti2ctest.dll del paquete de software MITT en la carpeta .
Vea todas las pruebas de MITT I2C mediante la opción /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
Ya está listo para ejecutar pruebas de I2C. Puede ejecutar una sola prueba, todas las pruebas a la vez o ejecutarlas manualmente.
Ejecute una sola prueba mediante la opción /name:<test name> . Este comando ejecuta la prueba BasicIORead:
"C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\te" MITTI2CTest.dll /name:MITTI2CTest::BasicIORead
Ejecute todas las pruebas mediante este comando:
"C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\te" MITTI2CTest.dll
Ejecute pruebas manualmente mediante SPBCmd.exe herramienta incluida en el paquete de software MITT.
Esquema del adaptador de I2C