Параллельный интерфейс: lpt-порт icon

Параллельный интерфейс: lpt-порт



НазваниеПараллельный интерфейс: lpt-порт
Дата конвертации26.09.2012
Размер126.72 Kb.
ТипДокументы
1. /Лекция 1 - Параллельный интерфейс.doc
2. /Лекция 2 - Принтеры.doc
3. /Лекция 3 - Последовательный порт.doc
4. /Лекция 4 - Модемы.doc
5. /Лекция 5 - Клавиатура.doc
Параллельный интерфейс: lpt-порт
Задача вывода информации, представленной в графической форме, возникла одновременно с появлением вычислительных систем. Устройства, выполняющие функции вывода графической информации на бумажный и некоторые другие носителей, называются принтерами (от англ print печать).
Последовательные интерфейсы : сом-порт
Лекция Модемы
Лекция №5 – клавиатура

Параллельный интерфейс: LPT-порт


Порт параллельного интерфейса был введен для подключения принтера - отсюда и пошло название LPT-порт (Line Printer - построчный принтер). Хотя через этот же порт подключается и большинство лазерных принтеров, которые по принципу дейст-вия не построчные, а постраничные, название LPT-порт закрепилось основательно.

Адаптер параллельного интерфейса представляет собой набор регистров, распо-ложенных в пространстве ввода/вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 3BCh, 378h и 278h. Порт может использовать линию запроса аппаратного прерывания, обычно IRQ5 или IRQ7. Порт имеет внешнюю 8-битную шину данных, 5-битную шину сиг-налов состояния и 4-битную шину управляющих сигналов.
BIOS поддерживает до четырех (иногда до трех) LPT-портов (LPT1 - LPT4) сво-им сервисом - прерыванием INT 17h, обеспечивающим через них связь с принтером по интерфейсу Centronics. Этим сервисом BIOS осуществляет вывод символа (по оп-росу готовности, не используя аппаратных прерываний), инициализацию интерфейса и принтера, а также опрос состояния принтера.


Стандарт IEEE 1284-1994


Стандарт на параллельный интерфейс IEEE 1284, принятый в 1994 году, определяет термины SPP, EPP, и ECP. Стандарт определяет пять режимов обмена данными, метод согласования режима, физический и электрический интерфейсы. Согласно IEEE 1284, возможны следующие режимы обмена данными через параллельный порт:
· Compatibility Mode - однонаправленный (вывод) по протоколу Centronics. Этот режим соответствует стандартному (традиционному) порту SPP.
· Nibble Mode - ввод байта в два цикла (по 4 бита), используя для приема ли-нии состояния.
· Byte Mode - ввод байта целиком, используя для приема линии данных.

· ЕРР (Enhanced Parallel Port) Mode - двунаправленных обмен данными, при котором управляющие сигналы интерфейса генерируются аппаратно во время цикла обращения к порту (чтения ил записи в порт).
· ECP (Extended Capability Port) Mode - двунаправленный обмен данными с возможностью аппаратного сжатия данных по методу RLE (Run Length En-coding) и использования FIFO-буферов и DMA. Управляющие сигналы ин-терфейса формируются аппаратно.


Режимы передачи данных


Стандарт IEEE 1284 определяет пять режимов обмена, один из которых полно-стью соответствует традиционному стандартному программно-управляемому прото-колу Centronics. Остальные режимы используются для расширения функциональных возможностей и повышения производительности интерфейса. Стандарт определяет способ согласования режима, по которому программное обеспечение может опреде-лить режим, доступный и хосту, и периферийному устройству (или присоединенному второму компьютеру).
Режимы нестандартных портов, реализующих протокол обмена Centronics аппа-ратно ( "Fast Centronics", "Parallel Port FIFO Mode"), могут и не являться режимами IEEE 1284, несмотря на наличие в них черт EPP и ECP.

При описании режимов обмена фигурируют следующие понятия:
· Хост - компьютер, обладающий параллельным портом.
· ПУ - периферийное устройство, подключаемое к параллельному порту (им может быть и другой компьютер). В обозначениях сигналов Ptr обозначает передающее периферийное устройство.
· Прямой канал - канал вывода данных от хоста в ПУ.
· Обратный канал - канал ввода данных в хост из ПУ.

Полубайтный режим ввода - Nibble Mode


Режим полубайтного обмена является наиболее общим решением задачи двуна-правленного обмена данными, поскольку может работать на всех стандартных (тра-диционных) портах. Все эти порты имеют 5 линий ввода состояния, используя кото-рые периферийное устройство может посылать в РС байт тетрадами (nibble - полу-байт, 4 бита) за два приема. Назначение сигналов порта приведено в таблице 1.


Таблица 1 - Сигналы LPT-порта в полубайтном режиме ввода

КОНТАКТ

СИГНАЛ SPP

I/O

ИСПОЛЬЗОВАНИЕ СИГНАЛА ПРИ ПРИЕМЕ ДАННЫХ В NIBBLE MODE

14

AUTOFEED#

O

HostBusy - сигнал квинтирования. Низкий уровень означает готовность к приему тетрады, высокий под-тверждает прием тетрады

17

SELECTIN#

O

Высокий уровень указывает на обмен в режиме IEEE 1284 (в режиме SPP уровень низкий)

10

ACK#

I

PtrClk. Низкий уровень означает действительность тетрады, переход в высокий - ответ на сигнал Host-Busy

11

BUSY

I

Прием бита данных 3, затем бита 7

12

PE

I

Прием бита данных 2, затем бита 6

13

SELECT

I

Прием бита данных 1, затем бита 5

15

ERROR#

I

Прием бита данных 0, затем бита 4


Прием байта данных в полубайтном режиме состоит из следующих фаз:
1. Хост сигнализирует о готовности приема данных установкой низкого уровня на линии HostBusy.
2. ПУ в ответ помещает тетраду на входные линии состояния.
3. ПУ сигнализирует о действительности тетрады установкой низкого уровня на линии PtrClk.
4. Хост устанавливает высокий уровень на линии HostBusy, указывая на заня-тость приемом и обработкой тетрады.
5. ПУ отвечает установкой высокого уровня на линии PtrClk.
6. Шаги 1-5 повторяются для второй тетрады.

Временная диаграмма приема данных приведена на рисунке 1.


Рисунок 1 - Временная диаграмма приема данных в Nibble Mode


Полубайтный режим является способом приема данных с самой большой загруз-кой процессора, и поднять скорость обмена выше 50 Кбайт/с практически не удается. Безусловное его преимущество в том, что он работает на всех портах. Его применяют в тех случаях, когда прием данных от устройства производится в небольших объемах. Однако для связи с адаптерами локальных сетей, внешними дисковыми накопителя-ми и CD-ROM этот режим крайне не эффективен.

Двунаправленный байтный режим Byte Mode
Данный режим обеспечивает прием данных с использованием двунаправленного порта, у которого выходной буфер данных может отключаться установкой бита 
CR.5 = 1. Как и в стандартный полубайтный режим, данный режим является программно-управляемым. 
Прием данных в байтном режим состоит из следующих фаз:
1. Хост сигнализирует о готовности приема данных установкой низкого уровня на линии HostBusy.
2. ПУ в ответ помещает байт данных на линии DATA| 7:0 |.
3. ПУ сигнализирует о действительности тетрады установкой низкого уровня на линии PtrClk.
4. Хост устанавливает высокий уровень на линии HostBusy, указывая на заня-тость приемом и обработкой байта.
5. ПУ отвечает установкой высокого уровня на линии PtrClk.
6. Хост подтверждает прием байта импульсом HostClk.
7. Шаги 1-6 повторяются для каждого следующего байта.
Назначение сигналов порта в байтном режиме ввода/вывода приведены в табли-це 2.


Таблица 2 - Сигналы LPT-порта в байтном режиме ввода/вывода


Побайтный режим позволяет поднять скорость обратного канала до скорости прямого канала в стандартном режиме. Однако работать он может только на двуна-правленных портах, которые применяются в основном лишь на малораспространен-ных машинах PS/2.
На рисунке 2 приведена временная диаграмма приема данных в режиме Byte Mode



Рисунок 2 - Прием данных в Byte Mode

Режим ЕРР

Протокол EPP (Enhanced Parallel Port улучшенный параллельный порт) был раз-работан задолго до принятия IEEE 1284 компаниями Intel, Xircom и Zenith Data Sys-tems. Он предназначался для повышения производительности обмена по параллель-ному порту. ЕРР был реализован в чипсете Intel 386SL (микросхема 82360) и в по-следствии принят множеством компаний как дополнительный протокол параллельно-го порта. Версии протокола, реализованные до принятия IEEE 1284, немного отлича-лись от нынешнего стандарта.

Протокол ЕРР обеспечивает четыре типа циклов обмена:
· Цикл записи данных.
· Цикл чтения данных.
· Цикл записи адреса.
· Цикл чтения адреса.
Назначение циклов записи и чтения ясно из их названия. Адресные циклы могут быть использованы для передачи адресной, канальной и управляющие информации. Циклы обмена данными явно отличаются от адресных применяемыми стробирую-щими сигналами.
На рисунке 3 приведен цикл записи данных ЕРР


Рисунок 3 - Цикл записи данных ЕРР


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


Рисунок 4 - Адресный цикл чтения ЕРР


В отличие от программно-управлямых режимов, описанных выше, внешние сигналы ЕРР-порта для каждого цикла обмена формируются аппаратно по одной опера-ции записи или чтения в регистр порта. На рисунке 3 приведена диаграмма цикла за-писи данных, иллюстрирующая внешний цикл обмена, вложенный цикл записи сис-темной шины процессора (иногда эти циклы называют связанными). Адресный цикл записи отличается от цикла данных только используемым стробом внешнего интер-фейса.
Назначение сигналов порта ЕРР и их связь с сигналами SPP приведены в 
таблице 3.


Цикл записи данных состоит из следующих фаз:
1. Программа выполняет цикл записи (IOWR#) в порт 4 (EPP Data Port).
2. Адаптер устанавливает сигнал Write# (низкий уровень), и данные помещают-ся на выходную шину LPT-порта.
3. При низком уровне WAIT# устанавливается строб данных.
4. Порт ждет подтверждения от ПУ (перевода WAIT# в высокий уровень).
5. Снимается строб данных- внешний EPP-цикл завершается.
6. Завершается процессорный цикл ввода/вывода.
7. ПУ устанавливает низкий уровень WAIT#, указывая на возможность начала следующего цикла.

Таблица 3 - Сигналы LPT-порта в режиме ввода/вывода ЕРР



Главной отличительной чертой ЕРР является выполнение внешней передачи во время одного процессорного цикла ввода вывода. Это позволяет достигать высоких скоростей обмена (0,5-2Мбайт/с). Периферийное устройство, подключенное к парал-лельному порту ЕРР, может работать на уровне производительности устройства, под-ключаемого через слот ISA. Периферийное устройство может регулировать длитель-ность всех фаз обмена с помощью всего лишь одного сигнала WAIT#. Протокол ав-томатически подстраивается и под длину кабеля - вносимые задержки только приве-дут к удлинению цикла. Поскольку применяемые кабели, соответствующие IEEE 1284, имеют вполне одинаковые волновые свойства для разных линий, нарушение передачи, связанных с состязаниями сигналов, происходить не должно. При подклю-чении сетевых адаптеров или внешних дисков к параллельному порту можно наблю-дать непривычное явление: снижение их производительности по мере удлинения ин-терфейсного кабеля.
Важной чертой ЕРР является то, что обращение процессора к периферийному устройству осуществляется в реальном времени - здесь нет никакой буферизации. Программный драйвер всегда способен наблюдать состояние и подавать команды в точно известные моменты времени. Циклы чтения и записи могут чередоваться в произвольном порядке или идти блоками. Такой тип обмена наиболее пригоден для регистро-ориентированной периферии или периферии, работающей в реальном вре-мени - сетевых адаптеров, устройств сбора информации и управления, дисковых уст-ройств и т.п.


Режим ЕСР

Протокол ЕСР (Extended Capability Port - порт с расширенными возможностями был предложен фирмами Hewlett Packard и Microsoft как прогрессивный режим связи с периферией типа принтеров и сканеров. Как и ЕРР, данный протокол обеспечивает высокопроизводительный обмен данными хоста с периферийными устройствами.

Протокол ЕСР в обоих направлениях обеспечивает два типа циклов:
· Циклы записи и чтения данных.
· Командные циклы записи и чтения.
Командные циклы подразделяются на два типа: передача канальных адресов и счетчика RLC (Run-Length Count).
В отличие от ЕРР вместе с протоколом ЕСР сразу появился и стандарт на про-граммную (регистровую) модель реализации его адаптера, изложенный в документе "The IEEE 1284 Extended Capabilities Port Protocol and ISA Interface Standart" компа-нии Microsoft. Этот документ определяет специфические свойства реализации прото-кола, не заданные стандартом IEEE 1284:
· компрессия данных хост адаптеров по методу RLE;
· буферизация FIFO для прямого и обратного канала;
· применение DMA и программного ввода/вывода;
Компрессия в реальном времени по методу RLE (Run-Length Encoding) позволя-ет достичь коэффициента сжатия до 64:1 при передаче растровых изображение, кото-рые обычно имеют длинные строки имеющихся байт. Естественно, компрессию мож-но использовать, только если ее поддерживает и хост, и периферийное устройство.
Канальная адресация ЕСР применяется для адресации множества логических устройств, входящих в одно физическое. Например, в комбинированном устройстве факс/модем/принтер, подключаемом только к одному параллельному порту, возмо-жен одновременный прием факса и печать на принтере. В режиме SPP, если принтер установит сигнал занятости, канал будет занят ожидающими данными, пока принтер их не примет. В режиме ЕСР программный драйвер программный драйвер просто ад-ресуется к другому логическому каналу того же порта.
Как и в других режимах 1284, протокол ЕСР переопределяет сигналы SPP (таб-лица 4).


Таблица 4 - Сигналы LPT-порта в режиме ввода/вывода ЕСР


Прямая передача данных на внешнем интерфейсе состоит из следующих шагов:
1. Хост помещает данные на шину канала и устанавливает признак цикла дан-ных (высокий уровень) или команды (низкий уровень) на линии HostAck.
2. Хост устанавливает низкий уровень на линии HostClk, указывая на действительность данных.
3. ПУ отвечает установкой высокого уровня на линии PeriphAck.
4. Хост устанавливает высокий уровень на линии HostClk, и этот перепад может использоваться для фиксации данных в ПУ.
5. ПУ устанавливает низкий уровень на линии PeriphAck для указания готовно-сти к приему следующего байта.

Обратная передача данных состоит из следующих шагов:
1. Хост запрашивает изменение направления канала, устанавливая низкий уро-вень на линии ReverseRequest#.
2. ПУ разрешает смену направлений установкой низкого уровня на линии Ack-Reverse#.
3. ПУ помещает данные на шину канала и устанавливает признак цикла данных (высокий уровень) или команды (низкий уровень) на линии PeriphAck.
4. ПУ устанавливает низкий уровень н линии PeriphClk, указывая на действительность данных.
5. Хост отвечает установкой высокого уровня на линии HostAck.
6. ПУ устанавливает высокий уровень на линии PeriphClk, и этот перепад может использоваться для фиксации данных хостом.
7. Хост устанавливает низкий уровень на линии HostAck для указания готовно-сти к приему следующего байта.



Рисунок 5 - Прямая передача в режиме ЕСР


Рисунок 6 - Обратная передача в режиме ЕСР




Конфигурирование LPT-портов



Управление параллельным портом разделяется на два этапа - предварительное конфигурирование (Setup) аппаратных средств порта и текущее (оперативное) пере-ключение режимов работы прикладным или системным ПО. Оперативное переклю-чение режимов возможно только в пределах режимов, разрешенных при конфигури-ровании. Таким образом обеспечивается возможность согласования аппаратуры и программного обеспечения и блокировки ложных переключений, вызванных некорректными действиями программы.

Способ и возможности конфигурирования LPT-портов зависят от его исполне-ния и местоположения. Порт, расположенный на плате расширения (обычно на муль-тикарте), устанавливаемой в слот ISA или ISA+VLB, обычно конфигурируются джамперами на самой плате. Порт, расположенный на системной плате, обычно кон-фигурируется через BIOS Setup. 

Конфигурированию подлежат следующие параметры:

· Базовый адрес, который может иметь значение 3BCh, 378h и 278h. При ини-циализации BIOS проверяет наличие портов по адресам именно в этом поряд-ке и, соответственно, присваивает обнаруженным портам логические имена LPT1, LPT2, LPT3. Адрес 3BCh имеет адаптер порта, расположенный на пла-те MDA или HGC. Большинство портов по умолчанию конфигурируются на адрес 378h и может переключаться на 278h.

· Используемая линия запроса прерывания: для LPT1 обычно используется, IRQ7, для LPT2 - IRQ5. Во многих "настольных" применениях прерывание от принтера не используется, и этот дефицитный ресурс PC можно сэконо-мить. Однако при использовании скоростных режимов ЕСР (или Fast Centron-ics) работа по прерываниям может заметно повысить производительность и снизить загрузку процессора.
· Использование канала DMA для режимов ECP и Fast Centronics - разрешение и номер канала DMA.
Режим работы порта может быть задан в следующих вариантах:
· SPP - порт работает только в стандартном однонаправленном программно-управляемом режиме.
· PS/2, он же Bi-Directional - отличается от SPP возможностью реверса канала (с помощью установки CR.5=1)
· Fast Centronics - аппаратное формирование протокола Centronics с использованием FIFO-буфера и, возможно, DMA
· EPP - в зависимости от использования регистров, порт работает в режиме SPP или EPP
· ECP - по умолчанию включается в режим SPP или PS/2, записью в ECR может переводится в любой режим ECP, но перевод в EPP записью в ECR кода ре-жима 100 не гарантируется.
· ECP+EPP - то же, что и ECP, но запись в ECR кода режима 100 переводит порт в режим ЕРР.
Выбор режима EPP, ECP или Fast Centronics в BIOS Setup или джамперами на плате само по себе не приводит к повышению быстродействия обмена с подключен-ной периферией, а только дает возможность драйверу и периферийному устройству установить оптимальный режим в пределах их возможностей. Однако большинство современных драйверов и приложений автоматически пытаются использовать эф-фективные режимы, так что не стоит умышленно ставить простые режимы без веских на то оснований.
Сетевые адаптеры, внешние диски и CD-ROM, подключаемые к параллельному порту, обычно могут использовать режим ЕРР. Для этого режима специальный драй-вер пока еще не применяется, а возможность использования ЕРР обычно включена в драйвер самого подключаемого устройства.

Физический и электрический интерфейс


Стандарт IEEE 1284 определяет физические характеристики приемников и передатчиков сигналов. Спецификации стандартного порта не задавали типов выходных схем, предельных значений величин нагрузочных резисторов и емкости, вносимой цепями и проводниками. На относительно высоких скоростях обмена различие в этих параметрах, как правило, не вызывало проблем совместимости. Однако расширенные режимы (функционально и по скорости передачи) требуют более четких спецификаций. IEEE 1284 определяет два уровня интерфейсной совместимости. Первый уровень (Level I) определен для устройств, не претендующих на высокоскоростные режимы обмена, но использующих возможности смены направления передачи данных. Второй уровень (Level II) определен для устройств, работающих в расширенных режимах, с высокими скоростями и длинными кабелями. К передатчикам предъявляются следующие требования:
· Уровни сигналов без нагрузки не должны выходить за пределы -0,5 ... +5,5В.
· Уровни сигналов при токе нагрузки 14 мА должны быть не ниже +2,4 В для высокого уровня (VOH) и не выше 0,4 В для низкого уровня (VOL) на постоян-ном токе.
· Выходной импеданс R0, измеренный на разъеме, должен составлять 50±5Ом на уровне VOH-VOL. Для обеспечения заданного импеданса в некоторых слу-чаях используют последовательные резисторы в выходных цепях передатчи-ка. Согласование импеданса передатчика и кабеля снижает уровень им-пульсных помех.
· Скорость нарастания( спада) импульса должна находиться в пределах 0,05-0,4 В/нс.
Требования к приемникам: 
· Допустимые пиковые значения сигналов -2,0 + 7,0 В (выдерживаемые без разрушений и ошибок в работе).
· Пороги срабатывания должны быть не выше 2,0 В (VIH) для высокого уровня и не ниже 0,8 В (VIL) для низкого.
· Приемник должен иметь гистерезис в пределах 0,2 - 1,2 В.
· Входной ток микросхемы (втекающий и вытекающий) не должен превышать 20 мкА, входные линии соединяются шиной питания +5 В резистором 1,2 кОм.
· Входная емкость не должна превышать 50 пФ.
Стандарт IEEE 1284 определяет три типа используемых разъемов. Типы А(DB-25) и В (Centronics-36) используется в традиционных кабелях подключения принтера, тип С - новый малогабаритный 36-контактный разъем.
Рекомендуемые схемы входных, выходных и двунаправленных цепей приведены на рисунке 7 и 8.



Рисунок 7 - Оконечные цепи однонаправленной линии


Рисунок 8 - Оконечные цепи двунаправленной линии


Интерфейсные кабели, традиционно используемые для подключения принтера, обычно имеют от 18 до 25 проводников, в зависимости от числа проводников в цепи GND. Эти проводники могут быть как перевитыми, так и нет. К экранированию кабе-лей жестких требований не предъявлялось. Такие кабели вряд ли будут надежно ра-ботать на скорости 2 Мбайт/с и при длине более 2 метра. Стандарт IEEE 1284 регламентирует и свойства кабелей:
· Все сигнальные линии должны быть перевитыми с отдельными обратными (общими) проводами.
· Каждая пара должна иметь импеданс 62±6Ом в частотном диапазоне 4-16 МГц.
· Уровень перекрестных помех между парами не должен превышать 10%.
· Кабель должен иметь экран (фольгу), покрывающий не менее 85% внешней поверхности. На концах кабеля экран должен быть окольцован и соединен с контактом разъема.
Кабели, удовлетворяющие этим требованиям, маркируются надписью "IEEE Std 1284-1994 Compliant". Они могут иметь длину до 10 метров. Обозначения типов приведены в таблице 1.


Таблица 1 - Типы кабелей IEEE 1284-1994



Похожие:

Параллельный интерфейс: lpt-порт iconСтандартный параллельный порт (Interfacing the Standard Parallel Port)
Переведено Д. С. Иоффе (dsioffe@yandex ru, Icq 313263348) с другом promtом (в девичестве Stylus) исключительно для расширения собственного...
Параллельный интерфейс: lpt-порт iconРасширенный параллельный порт (Interfacing the Enhanced Parallel Port)
Переведено Д. С. Иоффе (dsioffe@yandex ru, Icq 313263348) с другом promtом (в девичестве Stylus) исключительно для расширения собственного...
Параллельный интерфейс: lpt-порт iconСтандартный параллельный порт (Interfacing the Standard Parallel Port)
Переведено Д. С. Иоффе (dsioffe@yandex ru, Icq 313263348) с другом promtом (в девичестве Stylus) исключительно для расширения собственного...
Параллельный интерфейс: lpt-порт iconРасширенный параллельный порт (Interfacing the Enhanced Parallel Port)
Переведено Д. С. Иоффе (dsioffe@yandex ru, Icq 313263348) с другом promtом (в девичестве Stylus) исключительно для расширения собственного...
Параллельный интерфейс: lpt-порт iconГрафический интерфейс ос windows Графический интерфейс Windows
Графический интерфейс позволяет осуществлять взаимодействие человека с компьютером в форме диалога с использованием окон, меню и...
Параллельный интерфейс: lpt-порт iconПараллельный порт с расширенными возможностями (Interfacing the Extended Capabilities Port)
Переведено Д. С. Иоффе (dsioffe@yandex ru, Icq 313263348) с другом promtом (в девичестве Stylus) исключительно для расширения собственного...
Параллельный интерфейс: lpt-порт iconПараллельный порт с расширенными возможностями (Interfacing the Extended Capabilities Port)
Переведено Д. С. Иоффе (dsioffe@yandex ru, Icq 313263348) с другом promtом (в девичестве Stylus) исключительно для расширения собственного...
Параллельный интерфейс: lpt-порт iconКомплектность
Контроллер 3ax lpt для трех биполярных и униполярных шаговых двигателей (L297 + L298N)
Параллельный интерфейс: lpt-порт iconКомплектность
Контроллер 3ax lpt для трех биполярных и униполярных шаговых двигателей (L297 + L298N)
Параллельный интерфейс: lpt-порт iconУчредители и спонсоры фестиваля
Ооо “ вск “, ООО “Ориста”, ООО “свт восточный ”, ООО стивидорная компания “Малый порт”, ООО “ккс ”, профком докеров рпд ОАО “Восточный...
Разместите кнопку на своём сайте:
Документы


База данных защищена авторским правом ©podelise.ru 2000-2014
При копировании материала обязательно указание активной ссылки открытой для индексации.
обратиться к администрации
Документы

Разработка сайта — Веб студия Адаманов