共用方式為


GPIO_ENABLE_INTERRUPT_PARAMETERS結構 (gpioclx.h)

GPIO_ENABLE_INTERRUPT_PARAMETERS 結構會指定一般用途 I/O (GPIO) 針腳,並描述此針腳的中斷屬性。

語法

typedef struct _GPIO_ENABLE_INTERRUPT_PARAMETERS {
  BANK_ID                     BankId;
  PIN_NUMBER                  PinNumber;
  GPIO_ENABLE_INTERRUPT_FLAGS Flags;
  KINTERRUPT_MODE             InterruptMode;
  KINTERRUPT_POLARITY         Polarity;
  UCHAR                       PullConfiguration;
  USHORT                      DebounceTimeout;
  PVOID                       VendorData;
  ULONG                       VendorDataLength;
} GPIO_ENABLE_INTERRUPT_PARAMETERS, *PGPIO_ENABLE_INTERRUPT_PARAMETERS;

成員

BankId

包含 GPIO 針腳的銀行標識碼。 如果 M 是 GPIO 控制器中的銀行數目,BankId 是範圍 0 到 M–1 中的整數。 GPIO 架構延伸模組 (GpioClx) 先前從 CLIENT_QueryControllerBasicInformation 事件回呼函式中取得控制器中的銀行數目。 如需詳細資訊,請參閱<CLIENT_CONTROLLER_BASIC_INFORMATION中的。

PinNumber

銀行相對針腳號碼。 如果 N 是此銀行中的數字針腳,PinNumber 是範圍 0 到 N–1 中的整數。 GpioClx 先前已從 CLIENT_QueryControllerBasicInformation 事件回呼函式取得每個銀行中的針腳數目。 如需詳細資訊,請參閱 CLIENT_CONTROLLER_BASIC_INFORMATION中的 NumberOfPinsPerBank 成員的描述。

Flags

一組旗標,可控制 GPIO 針腳的組態。 此成員目前未定義旗標。

InterruptMode

此 GPIO 針腳的中斷要求是否為層級敏感或邊緣觸發。 這個成員會設定為下列其中一個值:

  • LevelSensitive

  • 闩鎖

如需詳細資訊,請參閱 KINTERRUPT_MODE

Polarity

此 GPIO 針腳的插斷線為主動高或主動-低。 這個成員會設定為下列其中一個值:

  • InterruptActiveHigh

  • InterruptRisingEdge

  • InterruptActiveLow

  • InterruptFallingEdge

  • InterruptActiveBoth

如需詳細資訊,請參閱 KINTERRUPT_POLARITY

PullConfiguration

此 GPIO 針腳是否已向上拉動或向下拉動。 此成員通常會設定為下列其中一個系統定義的常數:

  • GPIO_PIN_PULL_CONFIGURATION_PULLDEFAULT

  • GPIO_PIN_PULL_CONFIGURATION_PULLUP

  • GPIO_PIN_PULL_CONFIGURATION_PULLDOWN

  • GPIO_PIN_PULL_CONFIGURATION_PULLNONE

如果這些常數都未適當描述針腳設定,這個成員可以設定為128-255範圍內的廠商定義常數。 如需這些常數的詳細資訊,請參閱 GPIO_PIN_PULL_CONFIGURATION

DebounceTimeout

以 10 微秒為單位的分解時間。 例如,debounce time 5.84 毫秒指定為 584。 反轉時間是輸入訊號在低到高轉換開始后在高階穩定,或在高到低轉換開始后處於低階所需的時間。 例如,如果機械開關產生插斷訊號,則解彈時間是開關中金屬接觸停止在開關開啟或關閉后停止彈跳所需的時間。

VendorData

呼叫端配置的緩衝區指標,其中包含此 GPIO 針腳的廠商定義數據。 這個成員是選擇性的,如果沒有廠商定義的數據可用,則會設定為NULL。 如需廠商定義數據的詳細資訊,請參閱 ACPI 5.0 規格中的 GPIO 連線描述元 的描述。

VendorDataLength

VendorData 成員所指向的數據緩衝區大小,以位元組為單位。

言論

CLIENT_EnableInterruptCLIENT_UnmaskInterrupt 事件回呼函式會使用 GPIO_ENABLE_INTERRUPT_PARAMETERS 結構來指定 GPIO 針腳,並描述此針腳的中斷屬性。

GPIO_PIN_PULL_CONFIGURATION_XXX 常數會指定拔起或下拉一般用途 I/O(GPIO) 針腳。

#define GPIO_PIN_PULL_CONFIGURATION_DEFAULT (0x0)
#define GPIO_PIN_PULL_CONFIGURATION_PULLUP (0x1)
#define GPIO_PIN_PULL_CONFIGURATION_PULLDOWN (0x2)
#define GPIO_PIN_PULL_CONFIGURATION_NONE (0x3)

GPIO_ENABLE_INTERRUPT_PARAMETERS 結構的 PullConfiguration 成員會設定為 GPIO_PIN_PULL_CONFIGURATION_XXX 常數。

如果系統定義的 GPIO_PIN_PULL_CONFIGURATION_XXX 常數都未適當描述針腳設定,則此成員可以設定為 128 到 255 範圍內的廠商定義常數。

要求

要求 價值
最低支援的用戶端 從 Windows 8 開始支援。
標頭 gpioclx.h

另請參閱

CLIENT_CONTROLLER_BASIC_INFORMATION

CLIENT_EnableInterrupt

CLIENT_QueryControllerBasicInformation

CLIENT_UnmaskInterrupt

KINTERRUPT_MODE

KINTERRUPT_POLARITY