Андрей Смирнов
Время чтения: ~19 мин.
Просмотров: 123

Управление устройствами на 220в через LPT порт (полный цикл создания)

Еще на заре появления первых компьютеров перед создателями стояла задача возможности подключения к ним разнообразных устройств. Особенно это стало актуальным тогда, когда компьютеры перестали занимать целые комнаты, а начали помещаться на столе, то есть стали персональными. Ведь компьютер – это не только средство для выполнения вычислений, но и устройство, пользователь которого может выполнять множество различных функций: распечатать текст или фотографии, управлять различными устройствами, воспроизводить фильмы и музыку, связаться с другими пользователями со всех уголков мира с помощью компьютерной сети. Все это становится возможным при подключении к компьютеру внешних устройств, которые называют общим словом периферия, с помощью специальных унифицированных разъемов, называемых портами.

2474846.jpg

Порты персонального компьютера

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

  • Внутренние – для подключения устройств внутри ПК (жесткие диски, видеокарты, платы расширения).
  • Внешние – для подключения внешней периферии (сканера, монитора, клавиатуры, фотоаппарата, флешки).

В данной статье мы рассмотрим один из видов внешнего порта, а именно LPT-port, его принцип работы, подключаемые устройства и современное применение.

Появление LPT-порта

Изначально LPT-port (его еще называют параллельный порт) разрабатывался только для подключения к ПК принтеров, это отражено даже в его названии – Line Printer Terminal, построчный принтерный терминал. Но в дальнейшем этот интерфейс стал применяться и для подключения других устройств: сканеров, дисководов и даже компьютеров между собой.

2474842.jpg

LPT-port был разработан компанией Centronics, занимавшейся в 70-х годах прошлого века производством матричных принтеров. Но уже через 10 лет его стала использовать фирма IBM для подключения своих скоростных устройств. Дело дошло до того, что было несколько вариантов данного интерфейса от разных производителей периферии.

В первоначальной версии этот порт был однонаправленным, то есть мог передавать данные только в одном направлении: от компьютера к периферийному устройству. Но это ограничение вскоре перестало устраивать пользователей, так как на рынок массово начали выходить устройства с возможностью передачи данных в обоих направлениях. Для этого различные производители предлагали свои усовершенствования – двунаправленный, ECP, EPP и другие. Пока в 1994 году не был принят международный стандарт IEEE 1284.

Схема LPT-порта

LPT-порт называется параллельным потому, что передача данных с помощью него осуществляется по нескольким проводникам одновременно, то есть параллельно. Этот интерфейс имеет 8-битную шину для передачи данных, 5-битную шину передачи сигналов и 4-битную шину передачи состояния.

Ниже представлена схема контактов LPT-порта.

2474875.jpg

Принцип работы LPT-порта

В простейшей конфигурации, чтобы реализовать принцип работы параллельного интерфейса, хватило бы только одиннадцати проводов, а именно: 1 провод на корпус (масса), 2 провода подтверждения и 8 проводов передачи данных. Но, по общепринятому стандарту IEEE 1284, каждый из восьми проводов передачи (2-9) данных имеет отдельное заземление.

Во время передачи данных оба устройства должны сообщать друг другу сведения о своем состоянии. Это реализуется с помощью контактов 18 и 35, на которые подается напряжение 0 В либо 5 В.

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

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

По контактам 12-14 передаются сигналы, сообщающие контрольные сигналы о состоянии принтера и конфликтах в его оборудовании.

По проводнику 12 на ПК передается информация о том, что в принтере нет бумаги. Компьютер реагирует на это передачей сигналов по линиям SELECT и ERROR и останавливает печать.

По проводнику 13 на компьютер передается информация о состоянии принтера — включен и готов или выключен и не готов.

По контакту 14 принтеру передается сигнал об автоматическом переводе строки.

По контакту 31 (16) передается сигнал о переводе принтера в начальное состояние и очищается буфер данных, т. е. все данные стираются из памяти принтера.

По контакту 32 (15) передаются все сигналы об ошибках во время передачи данных. Сигналы, передаваемые по этой линии, влияют на все остальные контакты и могут остановить печать. Например, часто возникающая ошибка принтера – Time Out, возникающая, когда принтер занят однотипной работой с данными и не может передать на ПК через сигнал BUSY, что он не готов к получению новых данных. Через некоторое время по линии ERROR на компьютер передается ошибка Time Out и новые данные не передаются. Иначе, при отсутствии сигнала ERROR, происходила бы дальнейшая передача данных, что привело бы к зависанию всей системы.

По контакту 36 (17) передается информация о готовности принтера к работе, например после устранения ошибки.

Режимы работы LPT-порта

2474866.jpg

Существует несколько режимов работы LPT-порта, которые позволяет использовать стандарт IEEE 1284:

  • SPP (Standard Parallel Port) — представляет собой однонаправленный порт, который отлично совмещается в работе с интерфейсом Centronics.
  • NibbleMode — использование этого порта является возможностью организации двунаправленного обмена данными в режиме SPP, при помощи использования управляющих линий (4 бит) для передачи данных от периферийного устройства к контроллеру.
  • Byte Mode— режим для двустороннего обмена данными, который используется довольно редко. Его применяли в некоторых старых контроллерах до принятия стандарта IEEE 1284.
  • EPP (Enhanced Parallel Port) — над разработкой этого порта работали сразу несколько известных компаний: Intel, Xircom и Zenith Data Systems. По своей работе это двунаправленный порт, который передает данные со скоростью до 2 Мбайт/сек.
  • ЕСР (Extended Capabilities Port) — этот вариант порта появился в результате работы двух компаний: HP и Microsoft. У него появились уже дополнительные возможности, например, возможность аппаратного сжатия данных, присутствие буфера и способность работать в режиме DMA. Также поддерживает работу двунаправленного обмена данными (симметричного), скорость которого может быть до 2,5 Мбайт/с.

Настройка LPT-порта

Настройка LPT-порта происходит в два этапа: предварительная настройка аппаратных средств порта и текущее переключение режимов порта прикладным ПО.

2474834.jpg

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

Выборы режимов напрямую или через BIOS сами по себе не приводят к повышению скорости обмена данными между ПК и периферией, а служат для возможности выбора драйвером оптимального режима работы. Но драйверы современных устройств сами автоматически выставляют наиболее эффективные режимы работы параллельного порта, поэтому ручная настройка в большинстве случаев уже не требуется.

Виды реализаций LPT-порта

Раньше большинство производителей материнских плат размещали контроллеры LPT-port на своей продукции либо на задней панели платы. Был еще один вариант расположения. В некоторых случаях было удобно помещать контроллер на самой плате — коннекторе для подключения внешней LPT-port планки. Но с момента появления более скоростных интерфейсов для передачи данных материнских плат с распаянными LPT-портами становилось все меньше и меньше. Сейчас даже не у каждого производителя в ассортименте выпускаемой продукции имеются такие платы. И тогда на помощь приходят карты расширения, подключаемые к более современным интерфейсам:

  • PCI – LPT-port. Переходник между LPT-портом и более современным разъемом PCI.
  • PCI2 — LPT-port (PCI-Ex. 2.0). Переходник между LPT-портом и разъемом PCI-Ex.2.0
  • USB – LPT-port. Переходник между LTP-портом и современной версией широко используемого USB-разъема.

2474869.jpg

Современное применение LPT-порта

Из-за способности параллельной передачи данных такого порта, в 70-х — 80-х годах он зарекомендовал себя одним из самых быстроработающих интерфейсов компьютера. Поэтому он использовался даже для соединения 2-х компьютеров между собой. Но эта же особенность накладывает и ограничение на максимальную длину кабеля из-за возникающих помех в соседних проводниках. Длина не может превышать 5 м, иначе искажения сигналов превышают допустимые для корректного распознавания данных.

C появлением более скоростных интерфейсов актуальность LPT-порта сошла на нет. Второе дыхание ему придали радиолюбители, которые используют его для управления собранными схемами (освещение в доме, светомузыка и другие устройства).

icon1.jpgЗдравствуйте, уважаемые читатели блога Help начинающему пользователю компьютера. В данной статье мы рассмотрим опции БИОС для настройки LPT-порта. Onboard Parallel PortДанная опция задает адрес ввода/вывода и номер прерывания для паралельного порта (LPT)Значения опции:378H/IRQ7 – адрес 378H и прерывание IRQ7;278H/IRQ5 – адрес 278H и прерывание IRQ5;3BCH/IRQ7 – адрес 3BCH и прерывание IRQ7;Auto – автоматическое определение адреса ввода/вывода и номер прерывания;Disabled – отключает порт LPT.Данная опция может встретиться также под следующими названиями:Parallel ParallelPortParallel Port AddressParallelPortInterfaceBaseI/OAddressОпция позволяет задать адрес, который будет использоваться параллельным портом.Значения опции: 378; 278.ParallelPortIRQС помощью данной опции можно задать номер прерывания, которое будет использоваться портом LPT.Значения опции:IRQ5LPT порт будет использовать прерывание IRQ5;IRQ7LPT порт будет использовать прерывание IRQ7;Auto – автоматическое определение номера аппаратного прерывания для порта LPT;Disabled – аппаратное прерывание для LPT порта не используется. Это значит, что LPT порт отключен.Данная опция может встретиться также под следующими названиями:Port IRQInterruptОпция позволяет задать прерывание, которое будет использоваться параллельным портом.Значения опции: IRQ 5; IRQ 7.ParallelPortModeОпределяет режим работы параллельного порта (режим работы определяет скорость обмена данными между компьютером и периферийным устройством).Значения опции:SPP (или Normal)– стандартный режим работы параллельного порта. Скорость передачи данных равна 140 Кб/с;EPP – усовершенствованный режим работы параллельного порта (асимметричный двунаправленный обмен данными со скоростью до 2 Мбит/с);ECP – режим расширенного параллельного порта (симметричный двунаправленный обмен данными со скоростью до 2,5 Мбит/с);ECP+EPP – порт поддерживает два режима работы (ECP, EPP);EPP+ SPPпорт поддерживает два режима работы (EPP, SPP);ECPEPP 1.9 – порт поддерживает два режима работы (ECP, EPP) с использованием спецификации v1.9;ECPEPP 1.7 – порт поддерживает два режима работы (ECP, EPP) с использованием спецификации v1.7.Данная опция может встретиться также под следующими названиями:ModeOnboard Parallel ModePort ModeEPPModeSelectВыбор спецификации (версии) EPP-режима. Опция активна при выборе значения EPPилиECP+EPPпараметра ParallelPortMode.Значения опции:EPP1.9 – более новая версия, задается по умолчанию;EPP1.7 – устаревшая версия.Данная опция может встретиться также под следующими названиями:EPP VersionParallel Port EPP TypeECPModeUseDMAДанная опция активируется только при условии, если параллельный порт работает в режиме ECP. Она выделяет канал прямого доступа к памяти (DMA) с определенным номером.Значения опции:1 (или Chanel1); 3 (или Chanel3).Данная опция может встретиться также под следующими названиями:ECP DMA SelectECP Mode DMA ChannelParallel Port DMAParallel Port DMA ChannelPort DMALPT & COMВыход ПК из энергосберегающего режима при активности параллельного и (или) последовательного портов.Значения опции:NONE – запретить;LPT – выход ПК из энергосберегающего режима при активности параллельного порта;COM – выход ПК из энергосберегающего режима при активности последовательного порта;LPT/COM – выход ПК из энергосберегающего режима при активности параллельного и (или) последовательного портов.Данная опция может встретиться также под следующими названиями:Wake Up Events LPT & COMПоделиться:DIY или Сделай сам Из песочницы

Предыстория

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

Схема устройства

За исходную схему была взята одна из схем, найденных в Internet и выглядела она вот так:045e91ff88c977bba301a86350ce9a57.jpg Но только с небольшим изменением: между 1-ым пином оптопары 4N25 и 2-ым пином LPT был добавлен резистор на 390 Ом, и еще добавлен светодиод для индикации включения. Схема была собрана в тестовом режиме, т.е. просто соединена проводами так как нужно и проверена. В этом варианте она просто включала и выключала старый советский фонарик. Было решено, что если уже делать управление, то не для одного устройства, а минимум на 4 устройства (из расчёта: одна лампа на столе, люстра на два выключателя, запасная розетка). На данном этапе стало необходимо построение полной схемы устройства, начался выбор различных программ. Были установлены:

  1. PBC
  2. KiCAD
  3. gEDA
  4. Eagle

Посмотрев все их них я остановился на Eagle, так как в его библиотеке были «похожие» детали. Вот что получилось в нем:

На схеме использован порт DB9 т.е. обычный COM порт, это сделано из соображений экономии как места на плате, так и самих разъёмов (COM’вские у меня были), а так как мы будем использовать только 5 проводников, то этого нам хватит с запасом. Таким образом делаем еще и переходник с DB25 (LPT) на DB9 (COM), в моем случае делается он следующим образом: LPT 2-9 pin = COM 1-8 pin — это управляющие пины данных; LPT 18-25 pin (зачастую они соединены между собой) = COM 9 pin — это наша земля. Так же в схеме используется дополнительное питание на 12В для питания реле, по плану это будет простое китайское зарядное или может быть крона на 9В (одно реле срабатывает нормально, надо проверить на 4 одновременно). Отдельное питание и гальваническая развязка с помощью оптопары используется для того чтобы обезопасить порт компьютера. При желании можно конечно запитаться от 12В блока питания компьютера, но это каждый делает сам и на свой страх и риск.

Необходимые детали для создания устройства
  1. COM порт — 1 шт
  2. коннектор питания — 1 шт
  3. светодиод зелёный — 4 шт
  4. оптопара 4n25 — 4 шт
  5. посадочное место под оптопару (у меня было только на 8 ног) — 4 шт
  6. резистор 390 Ом — 4 шт
  7. резистор 4,7 кОм — 4 шт
  8. транзистор КТ815Г — 4 шт
  9. реле HJR-3FF-S-Z — 4 шт
  10. зажимы на 3 контакта — 4 шт
  11. фольгированный текстолит

Подготовка схемы печатной платы

Попытавшись использовать Eagle для подготовки печатной платы я понял, что это будет сложновато и решил найти более простой вариант. Этим вариантом стала программа sprint layout 5 пусть она и в исполнении для windows, но без проблем запускается в wine под linux. Интерфейс у программы интуитивно понятный, на русском языке и в программе имеется достаточно понятная помощь (help). Поэтому все дальнейшие действия по разработке печатной платы производились в sprint layout 5 (далее SL5). Хоть и многие используют данную программу для разработки плат своих устройств, в ней не оказалось необходимых мне деталей (даже в куче скачанных коллекций макросов). Поэтому пришлось сначала создать недостающие детали:

  1. COM порт (тот что был не совпал с моим, по отверстиям крепления)
  2. гнездо питания
  3. зажим на три контакта
  4. реле HJR-3FF-S-Z

Вид этих деталей:59a47f704584d3f7408ef1fab17bd852.png После добавления необходимых деталей началось само проектирование печатной платы. Проходило оно в несколько попыток, было их около пяти. Каждый вариант платы печатался на картоне прокалывались отверстия и в них вставлялись детали. Собственно так и было выяснено, что мой COM порт не совпадает с тем который был в SL5. Так же всплыла небольшая ошибка в схеме реле — реально корпус реле был сдвинут на 2-3 мм. Естественно все ошибки были исправлены. На первом печатном варианте выяснилось еще и не правильное подключение транзистора, были перепутаны два контакта. После всех исправлений и подгонок получилось плата следующего вида:22d215e598299ee21a7549fed3fa8adf.png В SL5 есть функция «Фотовид» для просмотра платы, вот как она выглядит в нем:

На финальном варианте платы будут еще немного подправлены дорожки, а в остальном она выглядит так же. В SL5 так же есть удобный вариант печати платы, можно скрывать не нужные слои и выбирать цвет печати каждого слоя, что очень пригодилось.

Подготовка печатной платы

Плату решено было делать методом ЛУТ (лазерно-утюговая технология). Далее весь процесс в фото. Вырезаем необходимого размера кусок текстолита.df48581a92fca39b91010af7449c3f08.jpg Берем самую мелкую наждачку и аккуратно зачищаем медную поверхность.4d7dadc7cffbe842c1c6f30ec2220f1e.jpg После зачистки поверхности её необходимо промыть и обезжирить. Промывать можно водой, а обезжиривать ацетоном (в моем случае это был растворитель 646). Далее печатаем на лазерном принтере на мелованной бумаге нашу плату, не забыв в принтере установить самую жирную печать (без экономии тонера). Этот вариант получился немного не удачным, так как размазался тонер, но другая попытка была в самый раз.bb9ccbd98f0dabd9aa1548d9d667c06b.jpg Теперь необходимо перенести рисунок с бумаги на текстолит. Для этого вырезаем рисунок и прикладываем его к текстолиту, стараемся его выровнять как нужно и после этого прогреваем утюгом. Необходимо тщательно прогреть всю поверхность, что бы тонер расплавился и прилип к медной поверхности. Потом даем плате немного остыть и идём мочить её под струей воды. Когда бумага достаточно хорошо промокнет её необходимо отделить от платы. На плате останется только прилипший тонер. Выглядит это так:867c53727bb4595de640b8c301b27565.jpg Далее необходимо подготовить раствор для травления. Я использовал для этого хлорное железо. На банке с хлорным железом написано, что раствор необходимо делать 1 к 3. Я немного отступил от этого и сделал 60 г хлорного железа на 240 г воды, т.е. получилось 1 к 4, не смотря на это травление платы происходило нормально, только немного медленнее. Обратите внимание на то, что процесс растворения сухого хлорного железа в воде идёт с выделением тепла, поэтому всыпать его в воду необходимо небольшими порциями и размешивать. Естественно для травления необходимо использовать не металлическую посуду, в моем случае это была пластиковая ёмкость (вроде от селёдки). У меня получился вот такой раствор:94c7a5cbd2d674cd835b8314b3fcaf7c.jpg Перед тем как опустить плату в раствор, я с помощью скотча приклеил к её обратной стороне леску, что бы было удобнее доставать и переворачивать плату. Если раствор попадет на руки надо быстро его смыть с мылом (мыло его нейтрализует), но пятна могут все равно остаться, все зависит от конкретных условий. Пятна с одежды вообще не выводятся, но мне повезло этого не проверить на себе. Погружать плату в раствор надо медью вниз и не всю плашмя, а под углом. Время от времени плату желательно очищать от отработки, так как она мешает дальнейшему травлению. Делать это можно при помощи ватных палочек.

Весь процесс травления у меня занял 45 минут, хватило бы и 40 минут, но я был просто занят ещё одним делом. После травления промываем плату с мылом отрываем скотч с леской и получаем:
Внимание! Не выливайте раствор хлорного железа в раковину (канализацию) — это может повредить металлические детали раковины, да и вообще раствор может ещё пригодиться. Далее нам необходимо смыть тонер, это успешно делается тем же растворителем 646, который использовался для обезжиривания (долгий контакт растворителя с кожей может её повредить).5978fa617f35d2e571b61bea1a56b98a.jpg Следующим шагом является сверление отверстий. У меня на плате предусмотрены были отверстия 1мм и 1.5 мм изначально, так как найти более тонких свёрл не удалось. Так же найти у нас в городе цанговый патрон для крепления его на электромоторчик не удалось, поэтому все делалось большой дрелью.f7e6786fd00d4dca2c0aff04f9fc720c.jpg Первое устройство подошлоa7b66200537c108f9327d9b024704a1c.jpg На первый раз я взял только два сверла, а при использовании такой дрели этого оказалось мало. Одно сверло сломалось, а второе погнулось. Все что я успел просверлить в первый день:18bc74f8e1a5e674cdc5720f831b89f0.jpg На следующий день я купил пять свёрл. И их как раз хватило, так как если они не ломаются (кстати из пятёрки сломал только одно), то тупятся, а при сверлении тупыми — портятся дорожки, медь начинает отслаиваться. После полного сверления платы получаем:
После сверления необходимо провести лужение платы. Для этого я использовал старый способ — паяльник, флюс ТАГС и олово. Хотелось попробовать с использованием сплава Розе, но его не найти у нас в городе.5ef05acfd70fc0831c1e8fc186e42acf.jpg После лужения получаем следующий результат:
Далее необходимо промыть плату для удаления остатков флюса, так как ТАГС водоотмывной, то делать это можно или водой или спиртом. Я сделал что-то среднее — отмывал старой водкой и протирал ватными палочками. После всех этих действий наша плата готова.

Монтаж деталей

Для проверки правильности платы изначально собираю только одну(из четырёх) линию деталей, мало ли где закралась ошибка.24efb31f91db4472a80f204e5e3ff9ce.jpg После монтажа деталей идём и подключаем устройство к компьютеру через LPT, для этого спаян переходник с DB25(LPT) на DB9(COM) в следующем виде:

  • 2 пин DB25 к 1 пину DB9
  • 3 пин DB25 к 2 пину DB9
  • 4 пин DB25 к 3 пину DB9
  • 5 пин DB25 к 4 пину DB9
  • 6 пин DB25 к 5 пину DB9
  • 7 пин DB25 к 6 пину DB9
  • 8 пин DB25 к 7 пину DB9
  • 21 пин DB25 (можно любой с 18 по 25) к 9 пину DB9

Так как в качестве провода использовалась обычная витая пара, то не хватило одного проводка, но для данного устройства достаточно только пяти проводов, так что данный вариант подходит. В качестве включаемой нагрузки у нас выступает простой советский фонарик. Ну и в качестве блока питания — универсальный китайский блок питания (4 коннектора и питание от 3 до 12 в). Вот все в сборе:46d02935c75894e8ce7fe48e10d689f1.jpg А вот уже устройство работает:6974d4132e4c2b8fb075a23a2682d01c.jpg На этом закончился ещё один вечер и монтаж остальных деталей был оставлен на следующий день. А вот и уже полностью собранное устройство:

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

Программная часть

Естественно для управления LPT портом нужно какое-то ПО, но так как у меня дома linux, то было решено просто написать простейшую программку самому, а в последствии её уже дописать и адаптировать как надо. Выглядела она примерно так:#include #include <stdlibclude> #inys> #define BASE 0 #define TIME 100000 int main () { int x = 0x0F; int y = 0x00; if (ioperm (BASE, 1, 1)) { perror ("ioperm()"); exit (77); } outb (x, BASE); return 0; } </stdlibclude> Данная программка отправляет в LPT порт 0x0F = 00001111, т.е. подает 1 на 2-5 пины (Data0-Data3), а это и есть наше управляющее напряжение между 2-5 пинами и землей (18-25 пины), таким образом будут включаться все четыре реле. Точно так же действует программа для отправки 0x00 в порт для отключения, просто вместо x отправляется y — outb (y, BASE). Еще можно прочитать состояние порта:#define BASEPORT 0x378 /* lp1 */ ... printf("статус: %dn", inb(BASEPORT)); ... Единственный нюанс этой программки в том, что её необходимо выполнять от root, так как простому пользователю не доступна функция ioperm. Думаю, как решать такую проблему можно не рассказывать, каждый выберет более подходящий ему вариант. В последствии программа была доработана так, что бы передавая ей параметры командной строки можно было указывать с каким устройством и что сделать. Вывод «sw —help»:Программа для управления реле через LPT порт. У программы может быть один или два параметра. Формат параметров: sw [номер устройства] [действие] номер устройства - от 1 до 8 действие - "on", "off", "st" - включение, выключение, статус Пример: "sw 2 on" для включения второго устройства или "sw --help" для вывода помощи PS если кому понадобится, то потом могу где-нибудь выложить файл схемы платы в sl5 и исходник программки управления.Используемые источники:

  • https://fb.ru/article/381382/lpt-port-osobennosti-i-printsipyi-rabotyi
  • http://xiod.ru/bios-nastroyka-lpt-porta/
  • https://m.habr.com/ru/post/112511/

Рейтинг автора
5
Подборку подготовил
Максим Уваров
Наш эксперт
Написано статей
171
Ссылка на основную публикацию
Похожие публикации