MITT の GPIO テスト
MITT ソフトウェア パッケージに含まれている GPIO テスト モジュールを使用して、次のボタンの音量を上げ下げ、電源、回転ロックをテストできます。 これらのテストを使用して、GPIO ドライバーとマイクロコントローラーに関する問題を検出し、短押しまたは長押しに対するシステムの応答が目的の応答であるかどうかを判断できます。 ボタンに取り付けられたラインは、MITT ボードによって物理的に低く引き下げられます。
開始する前に
- MITT ボードと GPIO アダプター ボードを取得します。 「MITT を使用するためのハードウェアの購入」を参照してください。
- MITT ソフトウェア パッケージのダウンロード。 テスト対象のシステムにインストールします。
- MITT ボードに MITT ファームウェアをインストールします。 「MITT の使用」をご覧ください。
ハードウェアのセットアップ
バス インターフェイス | ピン配置 | ACPI と回路図 | 接続ソリューション |
---|---|---|---|
GPIO ボタン | ボタンとインジケーターのライン: 音量の上下、電源、回転ロック、ラップトップ/スレート インジケーター、ドック インジケーター | 回路図 | 単純なオスブロック (デバッグ ボード上) |
GPIO コントローラー | GPIO コントローラーのピン配置とインデックスの使用 |
|
単純なオスブロック (デバッグ ボード上) |
MITT ボードで、GPIO コネクタを識別します。 この画像に示すように、JA1 というラベルが付いた 左端の 12 ピン ヘッダーが使用されます。
GPIO アダプター ボードを JA1 ヘッダーに接続します。
MITT ボードの電源ジャンパーを 3V3 に接続します。
GPIO ヘッダーの横にあるスイッチのスライダーを上に押し上げて、ボードに電力を供給します。
GPIO アダプター ボード (MITT に接続されている) から、ボリュームアップ (volu)、ボリューム ダウン (vold)、ドック/ドッキング解除 (ドック)、スレート/ラップトップ (モード) のラインを、テスト対象のシステム上の応答するピンに接続します。
この図に示すように、12 ピン ヘッダーは個々の GPIO ラインに配線されます。
GPIO ボード上の出力ピンの回路図。 ピンは、スイッチが押されたかのように、FET がラインを低く引き込むことができるよう、スイッチと並列に配置する必要があります。
省略可能。 ボリュームまたはインジケーターで MITT GPIO テストを実行するが、両方を実行しない場合は、これらのレジストリ エントリを設定することで、GPIO オートメーションの関連テストをスキップできます。 各エントリは DWORD で、値 1 はテストを有効にします。0 にすると無効になります。
体積
HKEY_CURRENT_USER\Software\Microsoft\MITT\GPIO\RunVolumeTest
インジケーター
HKEY_CURRENT_USER\Software\Microsoft\MITT\GPIO\RunIndicatorsTest
GPIO オートメーション テストを実行する
WDTF を使用して GPIO テストを手動で実行するには、次のタスクを実行します。
- MITT ソフトウェア パッケージから %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\WDTF\RunTime\Actions\SimpleIO に mittsimpleioaction.dll をコピーする
- %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\WDTF\RunTime\UnRegisterWDTF.exe を実行します。
- %ProgramFiles(x86)%\Windows Kits\8.1\Testing\Runtimes\WDTF\RunTime\Actions ..\RegisterWDTF.exe /nogacinstall を実行する
- MITT ソフトウェア パッケージ に含まれる SimpleIO_MITT_ GPIO _Sample.vbs を実行して、GPIO オートメーション テストを開始します。
例: カスタム GPIO 入力挿入
この例では、Example.txt ファイルを使用します。このファイルには、電源ボタンを 2 秒間押してからボタンを離すシーケンスが含まれています。 ファイルの内容は次のとおりです。
'h001E8480
'b0000000000011111
'b0000000100011111
'b0000000000011111
次の コマンドを実行します。
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
- 00 の SetChannel は、コントロール チャネルがデータを受信することを示します。
- 0000 のWriteData は、すべてのテスト モジュールを一時停止します。
- GPIO チャネルがデータを受信することを示す 01 を指定した SetChannel オプション。
- サンプル入力ファイルの内容を GPIO モジュールに送信するファイルの名前を持つ WriteDataFromFile。
- 制御チャネルに切り替える SetChannel が 00 の場合、データが受信されます。
- GPIO シーケンサーをアクティブ化するためのコントロール チャネルへの 0001 の WriteData。 GPIO モジュールがシーケンス処理を開始します。
入力シーケンスを生成する
シーケンスを生成するには、次の値が必要です。
インターバル値
インターバル値は、間隔中に押されたボタンを示すビット マスクです。 ビット マスクの 0 の値は、時間インターバル中にボタンが押されていないことを示します。 可能な値のビット インデックス値を次に示します。
16 ビット値のビット インデックス テスト対象のシステムでの使用 0 電源ボタンの有効化 ("1" は出力を有効にする) 1 ドック インジケーターの有効化 ("1" は出力を有効にする) 2 ボリューム アップの有効化 ("1" は出力を有効にする) 3 回転ロックの有効化 ("1" は出力を有効にする) 4 ボリューム ダウンの有効化 ("1" は出力を有効にする) 5 スレート/ラップトップ トグル有効化 ("1"は出力を有効にする) 6-7 非使用 8 電源ボタンの値 ("1" はスイッチを押す) 9 ドック インジケーター値 ("1"はスイッチを押す) 10 音量を上げる値 ("1" はスイッチを押す) 11 回転ロック値 ("1" はスイッチを押す) 12 音量を下げる値 ("1" はスイッチを押す) 13 スレート/ラップトップ トグル値 ("1"はスイッチを押す) 14-15 非使用 クロック マルチプライヤ
クロック マルチプライヤは、次のデータ パターンに移動する前の各データ パターンのボタンの保持時間 (1 マイクロ秒単位) です。 GPIO テスト モジュールは、回線がリセットされるまで、最終のデータ パターンを保持します。
小さいクロック マルチプライヤと大きいクロック マルチプライヤを使用する場合にはトレードオフがあります。 乗数の値を小さくすると、精度が高くなり、期間をカバーするためにデータ パターンにさらに多くの行を作成する必要があります。 データ パターン ファイルを作成するときに、必要なデータ パケットとクロック マルチプライヤ値の間の適切なバランスを決定する必要があります。
前の例を使用すると、入力挿入ファイルを作成できます。 入力シーケンスを生成するには、通信プロトコルが必要です。 MITT ボードからテスト対象のシステムに送信されるデータは、次のパターンで配置されます。
GPIO テスト回線にプロトコル レベルのエラーチェックはありません。 プロトコル エラーがある場合、MITT は不明なエラーを表示します。
GPIO アダプターの回路図