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

Программирование модемов

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

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

2.5. Пример программы передачи данных

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

// Программа работает с асинхронным адаптером COM1.
// Для правильной работы необходимо замкнуть
// вместе контакты 2 и 3 разъема COM1.

#include <stdio.h>
#include <conio.h>
#include "sysp_com.h"

void main(void);
void main(void) {

   AUX_MODE amd;

   aux_stat(&amd, 0);
   printf("\nСостояние порта COM1:"
          "\nКод длины символа:    %d"
          "\nКод числа стоп-битов: %d"
          "\nКонтроль четности:    %d"
          "\nСкорость передачи:    %lu",
          amd.ctl_aux.ctl_word.len,
          amd.ctl_aux.ctl_word.stop,
          amd.ctl_aux.ctl_word.parity,
          (unsigned long)amd.baud);

   amd.baud = 115200;

   aux_init(&amd, 0, 0);

   aux_stat(&amd, 0);
   printf("\nСостояние порта COM1:"
          "\nКод длины символа:    %d"
          "\nКод числа стоп-битов: %d"
          "\nКонтроль четности:    %d"
          "\nСкорость передачи:    %lu",
          amd.ctl_aux.ctl_word.len,
          amd.ctl_aux.ctl_word.stop,
          amd.ctl_aux.ctl_word.parity,
          (unsigned long)amd.baud);

   printf("\n\nТестирование асинхронного адаптера."
          "\nНажимайте клавиши!"
          "\nДля завершения работы нажмите CTRL-C"
          "\n");

   for(;;) {

// Вводим символ с клавиатуры и передаем его
// в асинхронный адаптер

      aux_outp(getch(), 0);

// Вводим символ из асинхронного адаптера и
// отображаем его на экране

      putchar(aux_inp(0));
   }
}

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