Compartir a través de


IOCTL_SERIAL_SET_MODEM_CONTROL IOCTL (ntddser.h)

La solicitud de IOCTL_SERIAL_SET_MODEM_CONTROL establece el registro de control de módem (MCR) en el UART. No se realiza ninguna comprobación de parámetros en la configuración de registro proporcionada por el cliente.

Para obtener el valor de MCR, un cliente puede usar una solicitud de IOCTL_SERIAL_GET_MODEM_CONTROL .

Código principal

IRP_MJ_DEVICE_CONTROL

Búfer de entrada

El miembro AssociatedIrp.SystemBuffer apunta a un ULONG asignado por el cliente que se usa para introducir información de control del módem.

Longitud del búfer de entrada

El miembro Parameters.DeviceIoControl.InputBufferLength se establece en el tamaño, en bytes, de un ULONG.

Búfer de salida

Ninguno.

Longitud del búfer de salida

Ninguno.

Bloque de estado

El miembro Information se establece en cero.

El miembro Status se establece en uno de los valores de estado genéricos para las solicitudes de control de dispositivos serie.

Comentarios

La implementación de esta solicitud de control de E/S (IOCTL) es específica del hardware porque no se define ningún diseño estándar para el registro de control de módem (MCR) en dispositivos UART compatibles con 16550. Los controladores para dispositivos periféricos que se conectan a puertos serie deben evitar el uso de este IOCTL, que podría funcionar con algunos UART, pero no con otros. Este IOCTL se usa principalmente para configurar el UART en modo de bucle invertido para las pruebas, pero solo si el UART tiene un MCR que admite el modo de bucle invertido.

Para obtener un diseño de ejemplo de MCR, consulte la definición de los bits de MCR (SERIAL_MCR_DTR a través de SERIAL_MCR_LOOP) en el archivo de encabezado Serial.h en el ejemplo de controlador serie en GitHub.

Requisitos

Requisito Valor
Header ntddser.h (incluya Ntddser.h)

Consulte también

IOCTL_SERIAL_GET_MODEM_CONTROL