I2C-Controllertests in MITT
I2C-Testmodule, die im MITT-Softwarepaket enthalten sind, können verwendet werden, um Datenübertragungen für einen I2C-Controller und seinen Treiber zu testen. Das MITT-Board fungiert als Clientgerät, das mit dem I2C-Bus verbunden ist.
Voraussetzungen
- Rufen Sie ein MITT-Board und ein I2C-Adapterboard ab. Siehe "Hardware kaufen" für die Verwendung von MITT.
- Laden Sie das MITT-Softwarepaket herunter. Installieren Sie es unter Test auf dem System.
- Installieren Sie DIE MITT-Firmware auf dem MITT-Board. Weitere Informationen finden Sie unter "Erste Schritte mit MITT".
Hardwareeinrichtung
Busschnittstelle | Anheften | ACPI und Schematik | Verbinden ion-Lösung |
---|---|---|---|
I2C | Alle benötigten Zeilen (SCL, SDA und GND) | ACPI-Tabelle | Einfacher männlicher Block (auf Debugboard) |
Verbinden der I2C Adapter auf JB1 auf dem MITT-Board.
Verwenden Sie den Jumper auf den I2C-Header (über JB1), um die richtige I2C-Spannung zwischen 3,3V und 1,8V auszuwählen. In dieser Abbildung ist 1,8V ausgewählt.
Verbinden SCL-, SDA- und GND-Pins auf dem Adapterboard an die verfügbaren SCL-, SDA- und GND-Leitungen des getesteten Systems.
Verwenden Sie den Jumper auf der I2C-Adapterplatte, um die richtige I2C-Spannung zwischen 3,3V und 1,8V auszuwählen. In dieser Abbildung ist 1,8V ausgewählt.
Setzen Sie auf der MITT-Tafel den Schalter SW0 auf die hohe Position. Diese Position aktiviert den Standardmodus für I2C, wenn das MITT eingeschaltet ist.
Verwenden Sie die RESET-Taste , um die MITT-Tafel zu einschalten. Wenn die Drahtverbindungen mit dem I2C-Controller korrekt sind, aktivieren LD7 (SDA-Indikator) und LD6 (SCL-Indikator). Wenn entweder LED nicht aktiviert ist, liegt ein Verkabelungsproblem vor, da SDA oder SCL oder beide niedrig gezogen werden.
Testtreiber und ACPI-Konfiguration
Führen Sie die folgenden Schritte auf dem System unter Test mit dem I2C-Controller aus:
Installieren Sie den WITTTest-Treiber, der im MITT-Softwarepaket enthalten ist, indem Sie den folgenden Befehl ausführen:
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
Ändern Sie die SYSTEM-ACPI, und fügen Sie diese ASL-Tabelle ein. Sie können den Microsoft ASL-Compiler verwenden.
Hinweis
Ändern Sie "\\_SB_. I2C2" zum ACPI-Eintragsnamen für den zu testenden I2C-Controller.
//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) } }
Hinweis
Zum Ausführen von MITT I2C-Tests sind nur TP1-3 erforderlich. TP4 und TP5 sind optionale Ziele.
I2C Automatisierungstests
Erstellen Sie einen Ordner im System unter Test.
Kopieren Sie die TAEF-Binärdateien in den Ordner, und fügen Sie sie dann ihrer PATH-Umgebungsvariable hinzu. Die erforderlichen TAEF-Binärdateien befinden sich in %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\TAEF.
Kopieren Sie Muttutil.dll und Mitti2ctest.dll aus dem MITT-Softwarepaket in den Ordner.
Zeigen Sie alle MITT I2C-Tests mithilfe der Option "/list " an:
"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
Sie sind jetzt bereit, I2C-Tests auszuführen. Sie können einen einzelnen Test, alle Tests gleichzeitig ausführen oder Tests manuell ausführen.
Führen Sie einen einzelnen Test mithilfe der Option "/name:<test name"> aus. Dieser Befehl führt den BasicIORead-Test aus:
"C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\te" MITTI2CTest.dll /name:MITTI2CTest::BasicIORead
Führen Sie alle Tests mit diesem Befehl aus:
"C:\Program Files (x86)\Windows Kits\10\Testing\Runtimes\TAEF\te" MITTI2CTest.dll
Führen Sie Tests manuell aus, indem Sie SPBCmd.exe Tool verwenden, das im MITT-Softwarepaket enthalten ist.
I2C Adapter schematisch