2

C# コードで、パラレル ポートを介して 8 ビット データを出力する必要があります。私は Windows7 Ultimate を使用しており、パラレル ポートを備え、アドレス 0378-037F に設定された Intel 945GCNL マザーボードを使用しています。ポートはカーネルに対して初期化されます (起動時にすべてのピン D0 ~ D7 が High になります)。以下のコードを使用した後でも、データを書き出すことができません。

using System;
using System.Runtime.InteropServices;

public class PortAccess
{
    [DllImport("inpout32.dll", EntryPoint="Out32")]
    public static extern void Output(int adress, int value);
}

コードプロジェクトで入手可能なこのコードを使用してみましたが、プログラムはエラーを生成していませんが、出力を観察できません。system32 フォルダーに inpout32.dll をインストールしました。16 進値をパラレル ポートに出力するコードの部分を以下に示します。

switch(j)
                {
                    case 0:
                        PortAccess.Output(888, 24);
                        break;
                    case 1:
                        PortAccess.Output(888, 36);
                        break;
                    case 2:
                        PortAccess.Output(888, 66);
                        break;
                    case 3:
                        PortAccess.Output(888, 129);
                        break;
                    case 4:
                        PortAccess.Output(888, 0);
                        break;
                    case 5:
                        PortAccess.Output(888, 129);
                        break;
                    case 6:
                        PortAccess.Output(888, 195);
                        break;
                    case 7:
                        PortAccess.Output(888, 231);
                        break;
                    case 8:
                        PortAccess.Output(888, 255);
                        break;
                }

すべてのデータ ピンは High のままであり、それらを制御する方法はありません。助けてください。

4

0 に答える 0