IOCTL_SERIAL_SET_MODEM_CONTROL IOCTL (ntddser.h)

IOCTL_SERIAL_SET_MODEM_CONTROL要求會在 UART 中設定數據機控制暫存器 (MCR) 。 用戶端提供的暫存器設定上沒有參數檢查。

若要取得 MCR 的值,用戶端可以使用 IOCTL_SERIAL_GET_MODEM_CONTROL 要求。

主要程式碼

IRP_MJ_DEVICE_CONTROL

輸入緩衝區

AssociatedIrp.SystemBuffer成員指向用來輸入數據機控制資訊的用戶端配置 ULONG。

輸入緩衝區長度

Parameters.DeviceIoControl.InputBufferLength成員會設定為 ULONG 的大小,以位元組為單位。

輸出緩衝區

無。

輸出緩衝區長度

無。

狀態欄塊

Information成員會設定為零。

Status成員會設定為序列設備控制要求的其中一個一般狀態值

備註

此 I/O 控制要求實作 (IOCTL) 是硬體特定的,因為未針對 16550 相容 UART 裝置的數據機控制暫存器 (MCR) 定義任何標準配置。 連接到序列埠的周邊裝置驅動程式應該避免使用此 IOCTL,這可能會與某些 UART 搭配使用,但不適用於其他 UART。 此 IOCTL 主要用於將 UART 設定為回送模式進行測試,但只有在 UART 有支援回送模式的 MCR 時。

如需 MCR 的範例版面配置,請參閱 GitHub 上 Serial 驅動程式範例 中 Serial.h 標頭檔中的 SERIAL_MCR_LOOP) , (SERIAL_MCR_DTR MCR 位的定義。

規格需求

   
標頭 ntddser.h (包含 Ntddser.h)

另請參閱

IOCTL_SERIAL_GET_MODEM_CONTROL