GPIO-Tests in MITT
GPIO-Testmodule, die im MITT-Softwarepaket enthalten sind, können verwendet werden, um die folgenden Schaltflächen lauter, leiser, ein- und auszuschalten und drehungssperre zu testen. Sie können diese Tests verwenden, um Probleme mit den GPIO-Treibern und Mikrocontrollern zu erkennen und zu ermitteln, ob die Reaktion des Systems auf einen kurzen oder langen Push die gewünschte Antwort ist. Die an den Tasten angebrachten Linien werden vom MITT-Board physisch tief gezogen.
Voraussetzungen
- Rufen Sie ein MITT-Board und ein GPIO-Adapterboard ab. Weitere Informationen finden Sie unter Kaufen von Hardware für die Verwendung von MITT.
- Laden Sie das MITT-Softwarepaket herunter. Installieren Sie es auf dem Zu test befindlichen System.
- Installieren Sie die MITT-Firmware auf dem MITT-Board. Weitere Informationen finden Sie unter Erste Schritte mit MITT.
Hardwareeinrichtung
Busschnittstelle | Anheften | ACPI und Schemas | Verbindungslösung |
---|---|---|---|
GPIO-Schaltflächen | Tasten- und Indikatorlinien: Lautstärke nach oben/unten, Ein/Aus, Drehsperre, Laptop/Slate-Indikator, Andockanzeige | Schaltpläne | Einfacher männlicher Block (auf Debugboard) |
GPIO-Controller | Anheften und Index des GPIO-Controllers |
|
Einfacher männlicher Block (auf Debugboard) |
Identifizieren Sie auf dem MITT-Board den GPIO-Connector. Es verwendet den linken 12-poligen Header mit der Bezeichnung JA1, wie in dieser Abbildung gezeigt.
Verbinden Sie das GPIO-Adapterboard mit dem JA1-Header .
Schließen Sie den Power Jumper auf dem MITT-Board an 3V3 an.
Drücken Sie den Schieberegler auf dem Schalter neben dem GPIO-Header nach oben, um das Board mit Strom zu versorgt.
Verbinden Sie die Leitungen "Volume up" (volu), "Volume Down" (Vold), "Dock/Abdocken" (Dock) und "Slate/Laptop" (Modus) von der GPIO-Adapterplatine (verbunden mit dem MITT) mit den entsprechenden Pins des zu testierenden Systems.
Der 12-polige Header ist wie in dieser Abbildung dargestellt mit einzelnen GPIO-Leitungen verbunden.
Schematic of an output pin on the GPIO board. Der Stift muss parallel mit einem Schalter platziert werden, damit der FET die Linie tief ziehen kann, als ob der Schalter gedrückt wird.
Optional. Wenn Sie die MITT GPIO-Tests für Volume oder Indikatoren ausführen möchten, aber nicht beide, können Sie die zugehörigen Tests in der GPIO-Automatisierung überspringen, indem Sie diese Registrierungseinträge festlegen. Jeder Eintrag ist ein DWORD, und der Wert 1 aktiviert den Test. 0 deaktiviert es.
Volume
HKEY_CURRENT_USER\Software\Microsoft\MITT\GPIO\RunVolumeTest
Indikatoren
HKEY_CURRENT_USER\Software\Microsoft\MITT\GPIO\RunIndicatorsTest
Ausführen von GPIO-Automatisierungstests
Führen Sie die folgenden Aufgaben aus, um GPIO-Tests manuell mithilfe von WDTF auszuführen:
- Kopieren Sie mittsimpleioaction.dll aus dem MITT-Softwarepaket nach %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\WDTF\RunTime\Actions\SimpleIO.
- Führen Sie %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\WDTF\RunTime\UnRegisterWDTF.exeaus.
- Führen Sie %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\WDTF\RunTime\Actions aus. \RegisterWDTF.exe /nogacinstall
- Starten Sie GPIO-Automatisierungstests, indem Sie SimpleIO_MITT_ GPIO-_Sample.vbs ausführen, der im MITT-Softwarepaket enthalten ist.
Beispiel: Benutzerdefinierte GPIO-Eingabeeinschleusung
In diesem Beispiel wird eine Datei Example.txtverwendet, die die Sequenz enthält, um den Netzschalter zwei Sekunden lang zu drücken und dann die Schaltfläche loszulassen. Hier ist der Inhalt der Datei:
'h001E8480
'b0000000000011111
'b0000000100011111
'b0000000000011111
Führen Sie diese Befehle aus:
Muttutil.exe -SetChannel 00
Muttutil.exe -WriteData 0000
Muttutill.exe –SetChannel 01
Muttutil.exe –WriteDataFromFile Example.txt
Muttutil.exe –SetChannel 00
Muttutil.exe –Writedata 0001
- SetChannel mit 00 gibt an, dass der Steuerungskanal Daten empfängt.
- WriteData mit 0000 hält alle Testmodule an.
- SetChannel-Option , indem Sie 01 angeben, um anzugeben, dass der GPIO-Kanal Daten empfängt.
- WriteDataFromFile mit dem Namen der Datei, die den Inhalt der Beispieleingabedatei an das GPIO-Modul senden soll.
- SetChannel mit 00, um zurück zum Steuerungskanal zu wechseln, empfängt die Daten.
- WriteData mit 0001 in den Steuerungskanal, um den GPIO-Sequenzer zu aktivieren. Das GPIO-Modul beginnt mit der Sequenzierung.
Generieren von Eingabesequenzen
Um eine Sequenz zu generieren, benötigen Sie die folgenden Werte:
Intervallwert
Der Intervallwert ist eine Bitmaske, die angibt, welche Schaltfläche während des Intervalls gedrückt wird. Ein Nullwert in der Bitmaske gibt an, dass die Schaltfläche während des Zeitintervalls nicht gedrückt wird. Dies sind die möglichen Werte für Bitindexwerte:
Bitindex im 16-Bit-Wert Verwendung auf dem getesteten System 0 Netzschalter aktivieren ("1" aktiviert die Ausgabe) 1 Dock-Indikator aktiviert ("1" aktiviert die Ausgabe) 2 Aktivieren der Lautstärke nach oben ("1" aktiviert die Ausgabe) 3 Drehungssperre aktiviert ("1" aktiviert die Ausgabe) 4 Leiser ("1" aktiviert die Ausgabe) 5 Slate/Laptop-Umschaltfläche aktiviert ("1" aktiviert die Ausgabe) 6-7 Nicht verwendet 8 Netzschalterwert ("1" drückt den Schalter) 9 Andockindikatorwert ("1" drückt den Schalter) 10 Lautstärke nach oben ("1" drückt den Schalter) 11 Drehungssperrwert ("1" drückt den Schalter) 12 Leiserer Wert ("1" drückt den Schalter) 13 Slate/Laptop-Umschaltwert ("1" drückt den Schalter) 14-15 Nicht verwendet Uhrmultiplikator
Der Taktmultiplikator ist die Haltezeit der Schaltfläche (in einer Mikrosekunden-Inkremente) für jedes Datenmuster, bevor zum nächsten Datenmuster verschoben wird. Das GPIO-Testmodul enthält das letzte Datenmuster, bis die Verbindung zurückgesetzt wird.
Es gibt einen Kompromiss für die Verwendung eines kleinen im Vergleich zu einem großen Taktmultiplikator. Kleinere Werte für den Multiplikator ermöglichen mehr Genauigkeit, sodass Sie mehr Zeilen in den Datenmustern erstellen müssen, um einen Zeitraum abzudecken. Beim Erstellen der Datenmusterdateien müssen Sie das richtige Gleichgewicht zwischen den benötigten Datenpaketen und dem Wert des Taktmultiplikators festlegen.
Mithilfe des vorherigen Beispiels können Sie Eingabeinjektionsdateien erstellen. Zum Generieren von Eingabesequenzen benötigen Sie das Kommunikationsprotokoll. Daten, die von der MITT-Platine an das zu testende System gesendet werden, sind in diesem Muster angeordnet:
Es gibt keine Fehlerüberprüfung auf Protokollebene in der GPIO-Testleitung. Wenn ein Protokollfehler vorliegt, zeigt das MITT einen unbekannten Fehler an.
GPIO-Adapterschema