Все контрольные являются типовым решением задания студента. © allcont.narod.ru 2010
 
 
 
 
Нуль - модем.

Соединение между собой 2-х компьютеров называется нуль-модемом.




Область данных BIOS.
COM1        40:00        3F8        IRQ4
COM2        40:02        2F8        IRQ3
COM3        40:04                      IRQ4
COM4        40:06                      IRQ3

Одно из них не должно использовать аппаратное прерывание (COM1, COM3 или COM2, COM4).

 
-  Делитель скорости обмена (2 байта): 19200    9600    4800    2400    1200    600    300    
-  Регистр управления линией (число битов, паритет, число стоп-битов);
Совет: Для машины типа «Искра» лучше иметь 2 стоп-бита.
-  Регистр управления модемом : DTR, RTS
-  Регистр состояния модема :   DCD (deltaDCD), RI (deltaRI), DSR (deltaDSR), CTS (deltaCTS),  
   (delta-изменение сигналов)

Биты изменения устанавливаются в промежуточное положение. Управляющая программа таким образом узнает были ли изменения.

-  Регистр состояния линии (порта):
получен байт
данные перезаписаны
ошибка паритета
ошибка синхронизации
регистр передатчика пуст
-  Регистр данных
-  Регистр разрешения прерывания



-  Регистр идентификации прерывания
Используются биты 1 и 2 для идентификации обрабатываемого события (пришли данные, буфер передатчика пуст, ошибка, изменения в регистре состояния модема).
2   1   0
х   х
0   0    ошибка
0   1    прием данных
1   0    буфер передатчика пуст
1   1    изменение в регистре состояния модема



Аппаратная логика порта инициализирует запрос на аппаратное прерывание, только в том случае если предыдущее аппаратное прерывание было обработано, поэтому сразу после установки вектора прерывания на свой собственный обработчик в основной программе нужно сымитировать обработку прерывания, для этого необходимо:
-    прочитать байт из регистра данных;
-    записать байт в регистра данных;
-    прочитать регистр состояния модема;
-    прочитать регистр состояния линии (бит #3 регистр управления модемом);


ПОП – подпрограмма обработки прерывания

Маски портов :
11101111        COM1
11110111        COM2

Число х20 записывается в порт 0х20 в обработчике прерывания.



Hosted by uCoz