Реклама:

//Определение адресов регистров порта

int

BASE;

 

//Базовый (первый)

     

// адрес блока

     

// регистров порта

#define

OUT_REG

BASE

//Регистр передачи

данных

     

#define

INREG

BASE

//Регистр приема данных

#define

LOW_DIV

BASE

//Младший байт

     

// делителя

#define

HIGH_DIV

BASE+1

//Старший байт

     

// делителя

#define

INT_REG

BASE+1

//Маска разрешенных

     

//прерываний

#define

INTJDREG

BASE+2

//Причина прерывания

#define

CONTROL

BASE+3

//Управляющее слово

УАПП

     

#define

MODEM

BASE+4

//Регистр управления

состоянием

 

//статических сигналов

#define

STATUS

BASE+5

//Состояние УАПП

#define

M_STATUS

BASE+6

//Состояние статических

     

// сигналов

//Определение основных констант

//Делители для различных скоростей передачи данных

//Скорость передачи — число после символов "В_":

#define В_110 1040

#define В_150 768

#define В_300 384

#define В_600 192

#define В_1200 96

#define В_2400 48

#define В_4800 24

#define В_9600 12

#define В_ 19200 6

#define В_38400 3

#define B_57600 2 ■

♦define B_115200 1 ■

//Маски разрешенных прерываний: Н ♦define DATA_REC 0x01 //Данные приняты Щ

♦define EMPTY_BUF 0x02 //Буфер передачи пустИ ♦define ERROR 0x04 //Ошибка Щ

/I при приеме данных Щ ♦define MODEMJNT 0x08 //Изменилось состояние

//статических сигналов

//Управляющие константы:

♦define DIVISOR 0x80 //Бит управления

// доступом к регистрам // записи делителя ♦define BIT_5 0x00 //Длина посылки 5 бит

♦define BIT_6 0x01 //Длина посылки 6 бит

♦define BIT_7 0x02 //Длина посылки 7 бит

♦define BIT_8 0x03 //Длина посылки 8 би-ngf

♦define STOP_1 0x00 //1 стоповый бит Щ

♦define STOP_2 0x04 //2 стоповых бита Щ

♦define NOPARITY 0x00 //Нет контроля четности

♦define EVEN 0x18 4 //Контроль четности

♦define ODD 0x08 //Контроль нечетности^

♦define FIXPARITY 0x20 //Фиксация бита Щ

Ц четности Н

♦define DTR 0x01 //Управление линией Н

DTR В

♦define RTS 0x02 //Управление линией Я

RTS Щ

♦define OUT1 0x04 //Управление линией Н

OUT1 Щ

♦define OUT2 0x08 //Управление линией И

OUT2 Щ

♦define LOOPBACK 0x10 //Управление Н

// внутренним тестом Н

//Маски готовности: Н

♦define DATAJN 0x01 //Данные приняты Н

♦define OVERRUN 0x02 //Переполнение Щ

♦define PARITY_ERR 0x04 //Ошибка четности Н

♦define FRAME_ERR 0x08 //Ошибка формата

//посылки

♦define DATA_OUT 0x20 //Готов к передаче


⇐ Предыдущая страница| |Следующая страница ⇒