Руководство по проектированию драйвера последовательного контроллера

Вы можете спроектировать драйвер или приложение, использующее интерфейс запроса последовательного ввода-вывода для взаимодействия с периферийным устройством, подключенным к последовательному порту. Последовательный порт — это аппаратный интерфейс связи на последовательном контроллере, который является UART-интерфейсом 16550 или совместимым устройством. Для управления последовательным портом, к которому подключено периферийное устройство без возможности восстановления, можно разработать пользовательский драйвер последовательного контроллера, который работает с расширением последовательной платформы (SerCx2), который заменяет версию 1 (SerCx).

В более старых версиях Windows именованный последовательный COM-порт, расположенный на компьютере, использовались драйверы Serial.sys и Serenum.sys.

Примечание

В этом разделе описывается программирование традиционных COM-портов. Сведения о подключенных к USB-портах последовательных портов см. в статье Usb Serial Driver (Usbser.sys)).

SerCx2

Вы можете написать драйвер последовательного контроллера, который работает вместе с версией 2 расширения последовательной платформы (SerCx2) для управления последовательным контроллером. Вы также можете написать драйвер периферийного устройства, подключенного к порту на последовательном контроллере, совместно управляемом SerCx2 и драйвером последовательного контроллера. Этот периферийный драйвер использует интерфейс запроса последовательного ввода-вывода для передачи данных на устройство и с устройства. Драйвер последовательного контроллера на основе расширений обрабатывает все аппаратные задачи для последовательного контроллера, но использует SerCx2 для выполнения многих системных задач, общих для всех последовательных контроллеров. SerCx2 — это системный компонент, начиная с Windows 8.1.

SerCx2 освобождает драйвер последовательного контроллера от операций обработки, необходимых для управления временем ожидания и координации транзакций ввода-вывода, которые конкурируют за доступ к последовательному контроллеру. В результате драйвер последовательного контроллера становится меньше и проще. Поставщик оборудования для последовательного контроллера предоставляет драйвер последовательного контроллера на основе расширений, который управляет аппаратными функциями в последовательном контроллере и использует SerCx2 для выполнения универсальных задач последовательного контроллера. Этот драйвер взаимодействует с SerCx2 через интерфейс драйвера устройства SerCx2.

Дополнительные сведения о SerCx2 см. в разделе Использование версии 2 расширения Serial Framework (SerCx2).

В этом разделе