ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ МОДЕМОВ
1. Основные функции программ для модемов
Набор выполняемых связными программами функций чрезвычайно широк и может значительно отличаться в каждом конкретном случае. Основными функциями программ для модемов являются:
^ конфигурирование связного порта и режимов его взаимодействия с внутренней шиной компьютера (для внутренних модемов);
> конфигурирование модема, то есть установка протокола передачи, формата данных, команд и других параметров;
> управление модемом в процессе установления соединения и при передаче данных, вывод ответов модема и информации о состоянии соединения;
> передача файлов между взаимодействующими компьютерами;
> диалоговый текстовый обмен между пользователями компьютеров (Chat-режим);
> доступ к информационным службам, базам данных;
> выход в Internet;
> удаленный доступ к локальной сети предприятия;
> эмуляция режима Host — компьютера (главной ЭВМ) для ряда удаленных терминалов;
> эмуляция режима терминала удаленного Host-компьютера;
> сохранение принимаемой и передаваемой информации;
> регистрация событий, происходящих в течение сеанса связи;
> автоматизация часто повторяющихся последовательностей действий;
> передача факсимильной информации между компьютерами или компью тером и факсимильным аппаратом;
> организация хранения вспомогательной информации, такой как телефон ные номера, данные о конфигурации модема и др.
Связные программы обеспечивают интерфейс пользователя с модемом, позволяют управлять конфигурацией модема и выполнением ими основных своих функций.
Кроме перечисленных основных функций, иногда возможна реализация протоколов сжатия данных и исправления ошибок.
Специфическими особенностями программ передачи факсимильной информации являются:
> передача данных по расписанию многочисленным адресатам;
^ прием и передача факсимильной информации в фоновом режиме;
> преобразование ряда графических форматов данных в стандартные для факсимильных аппаратов;
> возможность просмотра факсимильной информации.
13.2. Типовые команды связных программ
В большинстве связных программ (в основном для операционных систем типа DOS) для управления их режимами работы наряду с меню используются так называемые Alt-команды. Можно сказать, что сформировался некий стандарт де-факто на такие команды. Однако в конкретной реализации коммуникационной программы возможны некоторые отличия. Рассмотрим типовые Alt-команды на примере программы Procomm Plus.
13.2.1. Команды управления соединением
До соединения:
<Alt>—<D> выход в телефонный справочник и набор номера.
В процессе соединения:
<Alt>—<B> передача разрыва;
<Alt>-<C> очистка экрана;
<Alt>—<G> сохранение информации, выведенной на экран;
<Alt>—<L> включение/отключение принтера;
<Alt>—<T> вывод времени соединения;
<Alt> — <М> использование клавиш макроопределений;
<Alt>—<Fl> включение/выключение записи в файл регистрации соеди нения;
<Alt>- <F2> задание паузы записи в файл регистрации соединения;
<Alt>- <F5> запуск Script-файла;
<Alt> —<F6> повторный вывод сохраненного содержимого экрана;
<Alt> — <Е> переключение режима дуплекс/полудуплекс;
<Alt>—<0> включение режима диалога (Chat—режима);
<Alt>—<Q> включение Host-режима;
<Alt> — <J> инициализация модема;
<Alt>—<Y> автоматический ответ на вызов;
<Alt>—<U> сброс терминала;
<Alt> -<R> режим записи;
<Alt> — <К> переход в меню команд программы защиты от ошибок прото кола Kermit;
<Alt> — <N> пауза экрана;
<Alt> — <F3> переключение режимов "возврат каретки/ возврат каретки с переводом строки" (CR/CRLF).
После соединения:
<Alt> — <Н> отключение от линии;
<Alt>-<X> выход из программы.
13.2.2. Команды установки конфигурации
<Alt>—<S> конфигурирование модема;
<Alt>—<P> конфигурирование портов;
<Alt> <W> таблица преобразования;
<Alt> - <F8> распределение функций клавиш клавиатуры.
13.2.3. Команды дополнительных функций
<Alt> — <А> вызов текстового редактора;
<Alt>—<F> выход в каталог файлов;
<Alt>—<!> вывод информации о программе;
<Alt>—<V> просмотр файла;
<Alt>—<F7> смена каталога;
<Alt>—<=> использование буфера временного хранения (Clipboard);
<Ctrl>—<\> режим монитора;
<Ctrl > — < ]> изменение состояния;
<Ctrl> — < — > изменение строк;
<'> выход в меню программы.
13.3. Конфигурирование порта
13.3.1. Установка номера порта
Большинство программ позволяют использовать последовательные порты СОМ 1—COM4. Однако программы, ориентированные на компьютеры IBM PS/2, могут использовать СОМ1—СОМ8. Номер порта, устанавливаемый в программе, должен соответствовать реально используемому модемом порту. Рис. 13.1 иллюстрирует меню операционной системы Windows'95, в котором производится установка номера порта.
13.3.2. Скорость передачи
Скорость передачи данных по последовательному порту задается одним из значений: 75, 110, 300, 1200, 2400, 4800, 9600, 19600, 38400, 57600, 115200 Бод. Выбор скорости зависит от типа модема, его максимальной скорости и типа микросхемы UART, используемой в контроллерах последовательного порта модема и компьютера.
Если вы не являетесь счастливым обладателем UART 16550A и не используете программные ускорители типа FOSSIL-драйверов, то скорость передачи порта не может быть выше 19200 Бод.
Рис. 13.1. Установка свойств модема в Windows'95
При использовании модема, поддерживающего протоколы сжатия (V.42bis, MNP5), рекомендуется устанавливать скорость порта несколько большей, чем максимально возможная скорость передачи информации модемом. Например, если модем поддерживает протокол V.34 (28800 бит/с), то необходимо установить скорость порта 38400, 57600, или 115200 Бод.
Часто для более устойчивой работы приложений требуется, чтобы скорость передачи по используемому порту была постоянной и не изменялась в течение сеанса связи, даже несмотря на изменение скорости передачи модемом в канале. Это условие, в частности, относится к программам, использующим в своей работе Fossil-драйверы. Такая "залочка" (lock — замок, запирать) порта, как правило, достигается подачей команды АТ&В1 или явным заданием скорости порта в программе. В Windows'95, характеризующейся общим "отчуждением железа" от пользователя, фиксация скорости порта осуществляется установкой флажка "Only connect at this speed" в поле "Maximum speed" меню General (Control Panel\Modems\General) (рис. 13.1).
13.3.3. Формат передачи
Формат передаваемых через порт асинхронных знаков задается следующими параметрами:
> числом бит данных (7 или 8);
> числом стоповых бит (1, 1.5 или 2);
> типом проверки (на четность — Even, на нечетность — Odd, без проверки — None, проверочный бит всегда равен "1" — Mark, проверочный бит всегда равен "О" — Space).
Рис. 13.2. Установка формата асинхронного символа в Windows'95
Наиболее широко используется формат символа, включающий в себя 8 бит данных и 1 столовый бит без использования проверки (8N1). Значения соответствующих параметров для данного формата в Windows'95 показаны на рис. 13.2.
Рис. 13.3. Установка адреса порта и номера прерывания в терминальной программе Telix
Рис. 13.4. Установка параметров порта в программе Term95 (NC 5.0)
13.3.4. Адрес порта и номер прерывания
При конфигурировании встроенных модемов задаются адрес порта ввода-вывода и номер линии прерывания. На рис. 13.3 и 13.4 иллюстрируется выполнение этой операции для DOS с помощью программ Telix и Term95 (терминальной программы, включенной в состав оболочки Norton Commander 5.0).
13.4. Использование FOSSIL-драйверов
FOSSIL-драйверы используются для расширения функций BIOS, обслуживающих асинхронный последовательный порт (FOSSIL — аббревиатура названий нескольких коммуникационных программ Fido/Opus/SEAdog Standard Layer). Дополнительно эти драйверы поддерживают ряд функций для работы с клавиатурой, видеоадаптером и системным таймером.
Применение FOSSIL-драйверов позволяет увеличить скорость обмена по последовательному порту до 38400 Бод, в то время как функции BIOS обеспечивают максимальную скорость передачи только 9600 Бод.
Работа FOSSIL-драйверов основана на перехвате прерываний от портов. Драйверы содержат два внутренних буфера (приемника и передатчика), организованных в виде очереди FIFO. В буфер передатчика записываются данные, передаваемые компьютером модему. Драйвер самостоятельно определяет, когда свободен регистр данных СОМ-порта, и записывает в него очередной символ данных. При этом переданный символ удаляется из буфера, и осуществляется передача следующего символа. В буфер приемника драйвер записывает данные, поступающие в компьютер через СОМ-порт. Затем содержимое этого буфера может быть считано прикладной программой при помощи специальной функции драйвера.
Существуют специальные FOSSIL-драйверы, обеспечивающие программную эмуляцию протоколов исправления ошибок. Наиболее распространенными FOSSIL-драйверами являются XOO.SYS (ХОО.СОМ) и BNU.EXE (BNU.COM). В качестве примера рассмотрим установку этих драйверов.
Для запуска драйвера из стартового файла CONFIG.SYS, в нем необходимо записать строку:
device = XOO.SYS Е 2 Т=1024 R=2048,
где Е — отключение заставки, 2 — номер СОМ-порта, Т=1024 — размер буфера для передачи, R=2048 — размер приемного буфера.
При запуске драйвера из командной строки DOS с теми же параметрами необходимо набрать следующую команду: