Поделиться через


Доступ к устройству через последовательный порт SerCx2-Managed

SerCx2 и драйвер последовательного контроллера совместно управляют последовательным портом, к которому постоянно подключено периферийное устройство. Чтобы получить доступ к периферийным устройствам через последовательный порт, управляемый SerCx2, драйвер периферийных устройств открывает логическое подключение к последовательному порту и получает дескриптор файла для представления этого подключения. Затем драйвер использует этот дескриптор для отправки запросов ввода-вывода на порт.

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

  • Драйверы периферийных устройств на SerCx2-Managed последовательные порты

    Как правило, последовательный порт, управляемый SerCx2, постоянно подключается к периферийным устройствам. Это устройство управляется периферийным драйвером, который отправляет запросы ввода-вывода на последовательный порт. Эти запросы передают данные на устройство и с устройства, а также настраивают состояние последовательного порта. Запросы ввода-вывода, отправленные периферийным драйвером, совместно обрабатываются SerCx2 и связанным драйвером последовательного контроллера.

  • Открытие последовательного порта SerCx2-Managed

    Если драйвер периферийных устройств управляет устройством на последовательном порту, совместно управляемом SerCx2, и драйвером последовательного контроллера, драйвер может открыть логическое подключение к этому порту, а затем отправлять запросы ввода-вывода на устройство через порт.

  • Обработка запросов на чтение и запись в SerCx2

    Драйвер периферийных устройств отправляет запросы на запись (IRP_MJ_WRITE) и чтение (IRP_MJ_READ) на порт последовательного контроллера для передачи данных на периферийное устройство, подключенное к порту, и с ним. Способ, которым SerCx2 обрабатывает эти запросы, четко определен, даже если время ожидания запросов истекает или отменено.

  • Чтение данных из последовательного порта SerCx2-Managed

    Последовательный контроллер (или UART) обычно включает прием fifo. Этот FIFO обеспечивает аппаратно-управляемую буферизацию данных, полученных с периферийного устройства, подключенного к последовательному порту. Чтобы считывать данные из получения FIFO, периферийный драйвер для этого устройства отправляет запросы на чтение (IRP_MJ_READ) на последовательный порт.

  • Публикация интерфейса устройства для последовательного порта, управляемого SerCx или SerCx2

    Начиная с Windows 10 версии 1903 и более поздних, производители систем или интеграторы могут согласиться с помощью ACPI, чтобы SerCx/SerCx2 предоставляли последовательные порты приложениям и службам в качестве интерфейса устройства.