Электроника и все что с ней связано Ссылки найденые мной. Поелезные и не очень... Программирование и все что с ним связано
Хотите посмеятся...милости просим! Серьезные новости! Будет время - пишите

Описание портов компьютера

Присоединение внешних устройств к компьютеру типа IBM возможно через параллельный или последовательный (серийный) интерфейсы (порты) или через адаптер, непосредственно подсоединенный к системной шине ЭМВ через разъем (слот) на материнской плате.
 

Параллельный интерфейс.


Через параллельный интерфейс, имеющий 25-штырьковый разъем, к компьютеру обычно подсоединен принтер по стандарту Centronics (отечественный аналог: ИРПР-М). Ниже приведено распределение сигналов по контактам в IBM-комьютере.
 
Контакт
Сигнал
Направление сигнала
1
strob
строб
ист -> пр
2
date 1
данные
ист -> пр
...
……
данные
ист -> пр
9
date8
данные
ист -> пр
10
acknlg
подтверждение
пр -> ист
11
busy
занят
пр -> ист
12
pe
конец бумаги
пр -> ист
13
select out
готовность приемника
пр -> ист
14
auto feed
авт. перевод бумаги
ист-> пр
15
error
ошибка
пр -> ист
16
init
сброс
ист ->пр
17
select in
выбор
ист ->пр
19-25
ground
земля

Подчеркнутые сигналы (напр. error) - инвертированные. Уровень сигнала соответствует ТТЛ-схемам лог."1" = 2.4-5.25 В, лог."0" = 0-0.5 В. Компьютер (источник) проверяет нет ли сигнала busy, выставляет данные и подает сигнал strob. Приемник по появлению строба выставляет busy. После обработки информации снимает busy и выдает acknlg.
 

Эпюры напряжений при работе интерфейса Centronics.

Параллельный 8-битный код позволяет передать один из 255 симвалов таблицы ASCII, которая обычно "прошита" в ПЗУ принтера.

Для программирования данного интерфейса служат три регистра, чаще всего с шестнадцатеричным адресами (в адресном пространстве внешних устройств): 378 - данные, 379 - состояние, 37A - управление. Ниже приведено назначение битов регистров.

Состояние (379) Управление (37A)
7 Busy 7-5  не используется
6 Acknlg irq
5 Pe slct in
4 Slct out init
3 Error auto feed
2-0 не используется 0 strob 

Работу с параллельным портом ввода-вывода обеспечивает прерывание BIOS (basic input/output system) int 17h, которое имеет 3 функции: 0 - символ вывода на печать, 1 - инициализация порта, 2- получение слова состояния. При этом номер функции заносится в регистр процессора AH, код символа в AL, а номер порта (0-2) в DX. После вызова прерывания int 17 в AX окажется слово состояния. В Турбо Паскале в библиотеке DOS есть тип Registers и процедура Intr(n,registers), которые могут использоваться для работы с параллельным портом например так:

function StatPrint: byte; {возвращает слово состояние}

var Reg: Registers;

begin

Reg.Ah:=2; Reg.Dx:=0; Intr(17, Reg);

end;

При автоматизации физического эксперимента параллельный интерфейс может использоваться для ввода/вывода цифровой информации по 12 линиям от компьютера (данные - 8 бит и управление - 4 бита) и по 4 линиям к нему (состояние). Каждая выходная линия, при соответствующем согласовании, может быть использована для управления состоянием аппаратуры типа "включено-выключено": запуск генератора, опускание пера, открытие шторки и т.д. Простейший цифро-аналоговый преобразователь (ЦАП), показанный на рис.1, может использоваться для вывода аналоговой информации, например на самописец, осциллограф, динамик и др.

Входные линии параллельного порта можно использовать для ввода состояния клавиш, наличия высокого/низкого уровня сигнала и т.д. в ваших приборах. Например, можно программно легко реализовать простейший счетчик импульсов или частотомер. Если использовать генератор, у которого частота импульсов зависит от емкости (или сопротивления), то можно на его базе изготовить R или C измеритель.
 

Рис. 1 Простейший ЦАП на основе регистра (параллельного порта).

Обратите внимание на тот факт, что некоторые линии управления и состояние - инвертированы.
 
 
Последовательный (серийный) интерфейс.

Через последовательный интерфейс, имеющий 25- или 9-штырьковый разъем, к компьютеру обычно подсоединяют манипулятор мышь, внешний модем, иногда принтер по стандарту RS232 (отечественный аналог:: Стык С2). Ниже приведено распределение сигналов по контактам в IBM-комьютере.

Уровни сигналов лог."1" (MARK) и лог."0" (SPACE) составляет: -12..-3В и +3..+12В соответственно.

25 шт. 9 шт. Сигнал   Направление
  - PG защитная земля   
  3 TxD передаваемые данные  Выход
3 2 RxD принимаемые данные  Вход
4 7 RTS запрос на передачу  Выход
5 8 CTS готовность к передаче Вход
6 6 DSR готовность компьютера Вход
7 5 SG сигнальная земля  -
8 1 DCD контроль приема  Вход
20 4 DTR терминал готов  Выход
 

Формат данных для RS232:
 
 

Число старт и стоп битов - 1, 1.5, 2; P - бит четности; число битов данных -5, 7, 8. Скорость обмена информацией составляет 110-9600 бит/с (бод). Параметры порта могут быть установлены командой ДОС: mode com1: b, pr, db, s, p.

Где b – скорость передачи (110-9600), pr - приоритет (n-нет, o-нечет, e-чет), db-длина (7-8 бит), s- число стоп-битов, p- проверка таймаута.

Серийный порт занимает в адресном пространстве 3 байта: 3F8h- регистр передатчика (приемника), 3FBh- регистр управления, 3FDh- регистр состояния. Аналогично параллельному порту последовательный порт обслуживается прерыванием Int 14h.

Два компьютера могут быть соединены для обмена информацией через данный порт с помощью нуль-модемного кабеля ( т.е. тремя проводами)

PG PG
TxD RxD
RxD TxD

Norton Comander имеет соответствующую программную поддержку (Link). Чтобы Norton Commander мог работать с двум компьютерами, соединенными через параллельные порты, эти компьютеры должны быть соединены специальным кабелем.

Ниже приведена схема разводки кабеля.
 
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
7 15 13 12 10 11 1 14 16 5 6 4 3 8 2 9 17

 

Игровой порт (game port).

Игровой порт, служащий для подключения джойстиков, в своей основе имеет несколько нестандартный аналого-цифровой преобразователь: сопротивление-частота. Количество импульсов зависит от времени зарядки RC некоторого конденсатора С через резистор R (R=100 кОм), находящийся в джойстике, до уровня напряжения логической единицы, который фиксируется компаратором. Адрес этого адаптера - 200h (IBM XT) или 201h (IBM AT). Сигналы на разъеме игрового порта показаны ниже:

Контакт
Сигнал
Направление
1
+ 5 В
Выход
2
клавиша 1, джойстик А
Вход
3
значение X, джойстик А
Вход
4
Земля
 
5
Земля
 
6
значение Y, джойстик А
Вход
7
клавиша 2, джойстик А
Вход
8
+ 5 В
Выход
9
+ 5 В
Выход
10
клавиша 1, джойстик В
Вход
11
значение X, джойстик В
Вход
12
Земля
 
13
значение Y, джойстик В
Вход
14
клавиша 2, джойстик В
Вход
15
+ 5 В
Выход

Применение данного адаптера возможно для ввода 4 битов информации (сравните с параллельным портом).
 
 

Микросхема КР580ВВ55А (intel 8255А)

Для ввода/вывода цифровой информации из компьютерной системы используется программируемый параллельный порт КР580ВВ55А, который схематично изображен ниже.

Рис.2. Пример взаимодействия программируемых параллельного порта (PI) КР580ВВ55А и таймера (T) КР580ВИ53 с системной магистралью компьютера. DC - дешифратор К555ИД7.

Микросхема КР580ВВ55А ( аналог intel 8255А ) позволяет переключать шину данных компьютера ( data bus ) на один из трех 8-битных портов ( регистров ) A, B или C. Направление передачи данных и режим работы (0 - 2) определяются программным способом. Чаще других используется режим 0: простой ввод-вывод. Состояние адресных линий А0 и А1 позволяет выбрать для обмена информацией регистры A, B, C или регистр управления. Режим работы параллельного интерфейса КР580ВВ55А определяется байтом, записанным в регистр управления (см. ниже). При работе на вывод порты A, B, C действуют как регистры, т.е. сохраняют информацию до следующей записи, при работе на ввод информация теряется. Порт С, в отличие от портов A и B, разбит на полубайты и может программироваться раздельно т.е. мы имеем группы A и B.

В дополнение к основным режимам работы микросхема КР580ВВ55А обеспечивает возможность программной независимой установки/сброса любого бита в порте С, в этом случае старший бит в регистре управления должен быть 0.

Управляющее слово программируемого интерфейса КР580ВВ55А.
Биты
0
Порт С (0-3 биты) 0-вывод,1-ввод Группа В
1
Порт В 0-вывод,1-ввод
2
Режим:  0-режим 0,1-режим 1
3
Порт С (4-7 биты) 0-вывод,1-ввод Группа А
4
Порт А 0-вывод,1-ввод
5
Режим:  00-режим 0,01-режим 1,

1x-режим 2

6
7
Логическая единица 

 

Программируемый таймер КР580ВИ53.

Интегральная схема КР580ВИ53 создана по n-МОП технологии, Uпит=+5 В, U1>2.4 В, U0<0.45 В, P=1 Вт, fтакт<2 МГц, 24 "ножки", максимальное значение счета: 216 - в двоичном коде и 104 -в двоично-десятичном. Программируемый таймер КР580ВИ53 реализован в виде трех независимых 16-разрядных вычитающих счетчиков (каналов) с общей схемой управления. Каждый канал может работать в шести режимах. Программирование режимов работы каналов осуществляется индивидуально и в произвольном порядке путем ввода управляющих слов в регистры режимов каналов, а в счетчики - некоторого числа байтов. На рис.2 можно видеть, что таймер обменивается информацией с 8-битной шиной данных микропроцессорной системы (data bus) через вход D, а также он связан с адресной шиной двумя линиями А01, обеспечивающими выбор одного из четырех регистров (3 канала и управляющее слово). Сигналы шины управления IOR и IOW (чтение/запись из/в внешнее устройство) определяют направление потока информации от процессора к таймеру и наоборот. С0, С1, С2 - тактовые входы, сигналы на Е0, Е1, Е2 разрешают или запрещают работу соответствующего канала, OU0, OU1, OU2 - выходы.

Считать (получить) состояние счетчиков (каналов) можно: 1) прервав работу счетчика, при подаче сигнала Еn=0 или 2) не прерывая счета, при записи определенного управляющего слова. Начальная установка (сброс) таймера возможна только программно по каналам путем записи управляющего слова в регистр режима соответствующего канала. Режимы работы таймера: - режим 0 - прерывание терминального счета: после вычитания числа N, загруженного в счетчик, на выходе формируется высокий уровень, начало счета при сигнале Е=1 (E=0 - стоп) и загрузке старшего байта,

- режим 1 - ждущий мультивибратор: на выходе формируется импульс низкого уровня длительностью Ти, Ти=N- число, записанное в счетчик,

- режим 2 - генератор импульсный: на выходе сигнал частотой, в N раз меньшей, чем входная частота, в течение (N-1)Ти - высокий уровень, в течение Ти - низкий уровень сигнала.

- режим 3 - генератор меандра: входная частота делится на N, скважность близка к двум.

- режим 4 - одиночный программно-формируемый строб. сигнал: на выходе импульс низкого уровня Ти после отсчета N импульсов, запуск по перезагрузке.

- режим 5 - одиночный аппаратно-формируемый строб. сигнал: тоже, что и режим 4, но запуск по перепаду уровня на входе Еn.

Управляющее слово определяет: 1) режим работы канала (0-5), 2) тип счета (двоичный или двоично-десятичный), 3) формат чисел (одно- или двух байтовый).

Формат управляющего слова таймера КР580ВИ53.
Биты
   
0
Код: 0-двоичный |

1-двоично-десятичный

1
Режим работы: 000 – режим 0

001 – режим 1

x10 – режим 2 

x11 – режим 3 

100 – режим 4 

101 – режим 5

2
3
4
Загрузка 00-защелк-ние.(чтение)

01-только млад. байт 

10-только стар. байт 

11-сначала млад. байт,

затем старший байт

5
6
Выбор регистра канала 00 – канал 0

01 – канал 1

10 – канал 2

11 – запрет

7

В составе адаптера НВЛ-03 пользователю доступен только канал 2 программируемого таймера: адрес - 302h , адрес управляющего слова - 303h. На выходной разъем НВЛ-03 выведены линии О2 (15 контакт) и С2 (13 контакт), на линию Е2 всегда подан высокий уровень, что ограничивает выбор режимов работы.
 


Распайка слота ISA.

Электроника и все что с ней связано Ссылки найденые мной. Поелезные и не очень... Программирование и все что с ним связано
Хотите посмеятся...милости просим! Серьезные новости! Будет время - пишите
Hosted by uCoz