Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Модемы и факс-модемы. Программирование для MS-DOS и Windows.

© Александр Фролов, Григорий Фролов
Том 16, М.: Диалог-МИФИ, 1993.

[Назад] [Содеожание] [Дальше]

7.1. Драйвер асинхронного последовательного адаптера

Драйвер асинхронного последовательного адаптера представляет собой специальную библиотеку динамической компоновки. Он экспортирует набор функций, которые Windows может использовать для того, чтобы открыть порт, установить новый режим его работы, передать и принять данные, определить состояние порта и причину возникновения ошибок.

Однако приложения не обращаются непосредственно к этим функциям. Вместо этого они обращаются к функциям, экспортируемым из модуля USER, операционной системы Windows - OpenComm, CloseComm и т. д. Подробное описание данных функций представлено в следующем разделе книги.

Функции из модуля USER обращаются уже непосредственно к драйверу асинхронного последовательного адаптера.

В состав операционных систем Windows 3.1 и Windows for Worksgroups 3.11 входит драйвер асинхронного последовательного адаптера COMM.DRV. Этот драйвер позволяет получить доступ к портам COM1, COM2, COM3 и COM4. При этом драйвер использует для COM-портов адреса, записанные в области переменных (данных) BIOS.

Если область переменных BIOS не содержит информации о COM-портах, то базовые адреса и номера линии IRQ пользователь должен установить самостоятельно при помощи приложения Control Panel.

Введенная вами информация записывается в директивах COMxBase и COMxIRQ из раздела [386Enh] файла SYSTEM.INI. Данные из этих директив используются только в случае, когда в области переменных BIOS нет данных.

Драйвер асинхронного последовательного адаптера определяет тип микросхемы UART, на основе которой построен асинхронный последовательный адаптер. Если он обнаруживает UART 16550A, то включает аппаратный буфер FIFO, расположенный на нем.

В этом случае Windows устойчиво работает на скоростях 9600 бит/с и выше. Многие компьютеры, на которых не установлена эта микросхема, теряют информацию во время передачи данных и не могут установить связь на скорости выше 9600 бит/с.

[Назад] [Содеожание] [Дальше]