 |
Модемы и факс-модемы.
Программирование для MS-DOS и Windows.
© Александр Фролов, Григорий Фролов
Том 16, М.: Диалог-МИФИ, 1993.
|
Аннотация
Книга представляет собой новую редакцию четвертого тома "Библиотеки системного программиста" и посвящена использованию модемов и факс-модемов. В ней рассмотрены различные типы современных модемов, описаны их команды и регистры. Приведены рекомендации по покупке и установке модема.
Описана процедура установки и настройки нескольких наиболее распространенных телекоммуникационных программ. Вы научитесь передавать и принимать документы через модемы и факс-модемы.
В книге описаны приемы программирования портов асинхронного последовательного адаптера и модемов в среде операционных систем MS-DOS и Windows, приведены несколько примеров программ.
Дискета с исходными текстами программ
Оглавление
- Аннотация
- Предисловие
- 1. Зачем нужны модемы и факс-модемы
- 2. Модемы и факс-модемы
- 2.1. Основные понятия
- 2.1.1. Боды, биты за секунду и символы в секунду
- Биты за секунду
- Символы за секунду
- Боды
- 2.1.2. Модуляция сигнала
- 2.1.3. Дуплексный и полудуплексный режимы
- 2.1.4. Асинхронная и синхронная передача данных
- 2.2. Рекомендации CCITT для модемов
- 2.2.1. CCITT V.21
- 2.2.2. CCITT V.22
- 2.2.3. CCITT V.22 bis
- 2.2.4. CCITT V.23
- 2.2.5. CCITT V.32
- 2.2.6. CCITT V.32 bis
- 2.2.7. CCITT V.34
- 2.2.8. Bell 103, Bell 212A
- 2.3. Коррекция ошибок и сжатие информации
- 2.3.1. Протоколы коррекции ошибок
- 2.3.2. Протоколы компрессии передаваемых данных
- 2.3.3. Протоколы MNP
- 2.3.4. Рекомендация CCITT V.42
- 2.3.5. Рекомендация CCITT V.42 bis
- 2.4. Рекомендации CCITT для факс-модемов
- 2.5. Управление модемами
- 2.5.1. Система команд hayes-модемов
- Расширенный набор AT-команд
- Стандартный набор ответов модема
- 2.5.2. Регистры модемов
- 2.5.3. Коррекция ошибок и сжатием информации
- Команды модемов с протоколом MNP, CCITT V.42 и V.42 bis
- 2.6. Управление факс-модемами
- 2.7. Ваш первый модем
- 2.7.1. Внутренние и внешние модемы
- 3. Подключение модема к компьютеру
- 4. Телекоммуникационные программы
- 5. Асинхронный адаптер
- 6. Программирование модемов
- 6.1. Принципы программирования модемов
- 6.1.1. Инициализация COM-порта
- 6.1.2. Инициализация модема
- 6.1.3. Соединение с удаленным модемом
- 6.1.4. Ожидание ответа от модема
- 6.1.5. Переключение модема в командный режим
- 6.1.6. Сброс сигналов на линиях DTR и RTS
- 6.2. Коммуникационная программа
- 6.3. Использование прерываний COM-порта
- 6.3.1. Обработка прерываний асинхронного адаптера
- Разрешить обработку прерываний
- Определить причину прерывания
- Произошло прерывание по линии состояния
- Прерывание по принятию данных
- Буфер передатчика пуст
- Считать регистр идентификации прерывания
- Обработать конец прерывания
- 6.3.2. Последовательность работы программы
- Установить обработчик прерываний
- Выполнить инициализацию контроллера прерываний
- Выполнить инициализацию модема и установить связь
- Начать обмен данными с удаленным модемом
- Завершить программу
- 6.4. Программа CHATINT
- 6.5. Использование FOSSIL-драйверов
- 6.5.1. Взаимодействие программы с FOSSIL-драйвером
- Установка скорости передачи данных
- Передача символа с ожиданием
- Прием символа с ожиданием
- Определение состояния драйвера
- Инициализация FOSSIL-драйвера (COM-порта)
- Деинициализация драйвера
- 6.5.2. Управление линией DTR
- Определение параметров системного таймера
- Передача данных
- Сброс буфера передатчика
- Сброс буфера приемника
- Передача символа без ожидания
- Чтение символа из буфера без удаления
- Чтение символа из буфера клавиатуры
- Чтение символа из буфера клавиатуры с ожиданием
- Управление потоком
- Дополнительная функция для управления потоком
- Установить положение курсора
- Определение текущего положения курсора
- Вывод символа на экран
- Отслеживание сигнала DCD
- Вывод символа на экран
- Установка и удаление функций, вызываемых по таймеру
- Перезагрузка системы
- Чтение блока данных из буфера драйвера
- Запись блока данных в буфер драйвера
- Передача сигнала BREAK
- Получение информации о драйвере
- Установка внешней функции обработчика
- Отключение внешней функции обработчика
- 6.5.3. FOSSIL-драйвер и эмуляция протокола MNP
- Определить состояние эмулятора MNP
- Управление уровнем протокола MNP
- Управление режимом работы эмулятора
- Ожидание соединения
- Управление звуком
- Удалить FOSSIL-драйвер из памяти
- Определение номера версии эмулятора MNP
- Временная задержка
- 6.5.4. Коммуникационная программа
- 7. Модемы и операционная система Windows
- 7.1. Драйвер асинхронного последовательного адаптера
- 7.2. Телекоммуникационные функции
- 7.2.1. Функция OpenComm
- 7.2.2. Функция CloseComm
- 7.2.3. Первая программа
- 7.2.4. Определение доступных портов
- 7.2.5. Функция SetCommState
- 7.2.6. Структура DCB
- Поле Id
- Поле BaudRate
- Поле ByteSize
- Поле Parity
- Поле StopBits
- Поле RlsTimeout
- Поле CtsTimeout
- Поле DsrTimeout
- Поле fBinary
- Поле fRtsDisable
- Поле fParity
- Поле fOutxCtsFlow
- Поле fOutxDsrFlow
- Поле fDummy 200
- Поле fDtrDisable
- Поле fOutX
- Поле fInX
- Поле fPeChar
- Поле fNull
- Поле fChEvt
- Поле fDtrflow
- Поле fRtsflow
- Поле fDummy2
- Поле XonChar
- Поле XoffChar
- Поле XonLim
- Поле XoffLim
- Поле PeChar
- Поле EofChar
- Поле EvtChar
- Поле TxDelay
- Как заполнить или модифицировать структуру DCB
- 7.2.7. Функция BuildCommDCB
- 7.2.8. Функция SetCommBreak
- 7.2.9. Функция ClearCommBreak
- 7.2.10. Функция EnableCommNotification
- 7.2.11. Функция FlushComm
- 7.2.12. Функция GetCommError
- 7.2.13. Функция SetCommEventMask
- 7.2.14. Функция GetCommEventMask
- 7.2.15. Функция GetCommState
- 7.2.16. Функция ReadComm
- 7.2.17. Функция TransmitCommChar
- 7.2.18. Функция UngetCommChar
- 7.2.19. Функция WriteComm
- 7.2.20. Сообщение WM_COMMNOTIFY
- 7.3. Приложение EASYTTY
- 7.4. Приложение PHONE
- 7.5. Приложение TELETYPE
- 8. Приложения
- Литература
|