nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 16:04



Reply to topic  [ 25 posts ]  Go to page Previous  1, 2
USB-Bitronix Gembird CUM-360 
Author Message
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
На работе в похожих ситуациях я ставлю Epson LQ-100... просто он там завалялся в случае чего... :D

Вот на этом своём древнем Epson-е под Win XP я сегодня и решил протестировать сабж,
чтобы уже быть уверенным, что он работоспособен, чтобы быть позже заюзанным, как порт
вывода для различных поделий.
Attachment:
WinXPEpsonLQ.jpg
WinXPEpsonLQ.jpg [ 32.34 KiB | Viewed 10682 times ]

Но не тут-то было! :o Танцы с бубном вокруг этого гаджета я исполнял с 17:20 до 19:00... :twisted:

Ну а потом-таки я выжал из него пробную страницу печати! 8)
Attachment:
WinXPtmpPRN.jpg
WinXPtmpPRN.jpg [ 45.54 KiB | Viewed 10682 times ]


Я думаю, подробности моих шаманских плясок вам не интересны, но в итоге я выдавил из гаджета то, что так хотел:

С:\СОРY /B TESTFILE.BIN LPT2 - сработало! :kruto:

А значит этот гаджет способен управляться из-под Win-API методами открытия и записи в LPT, как в файл!
Чего я, собственно, от гаджета и ожидал, а вовсе не то, что он распахнет мне виртуальные 378Н... и т.д.

_________________
iLavr


17 Nov 2015 12:07
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
Я думаю, подробности моих шаманских плясок вам не интересны, но в итоге я выдавил из гаджета то, что так хотел:
С:\СОРY /B TESTFILE.BIN LPT2 - сработало! :kruto:

В общем пришлось мне эти "шаманские пляски с бубнами" повторить, но в масштабах несравнимых... :o
Дело в том, что я эти пляски выполнял под Windows XP, а это всё же не самая злобная ОС. :wink:
А тут пришлось повторить "пляски с бубнами" под Windows 7 в течение 2-х суток, и я уже
думал у меня голова лопнет! :roll:

Вкратце - если надо послать на принтер бинарный файл, чтобы ни один драйвер Венды не испортил
ни одного байта, и не вставил лишнего, лучше всего использовать команду:
С:\СОРY /B TESTFILE.BIN LPT1 (или PRN )

Но если реально на компе порта LPT нет, то СОРY в порт USB (некий USB0001)
не сработает...

Поэтому делают хитрый трюк, чтобы обмануть гнусную Венду вот так: принтер делают доступным
по сети, или, как говорят "расшаривают".
Attachment:
1_SHARE1.gif
1_SHARE1.gif [ 11.86 KiB | Viewed 10375 times ]

Далее - надо точно скопировать его сетевое имя, хотя его мы задаем сами. Причем желательно, чтобы
в имени не было пробелов и кириллицы, это удлинит шаманский танец, если что... :-?

Пусть для определенности будет: MyPrinter

Также нужно точно знать сетевое имя своего компьютера и лучше его узнать, набрав в командной
строке (cmd) команду hostname.

Пусть для определенности будет: MyComputer :lol: (как неоригинально!)

Теперь следует "замапить" (как говорят) по сети этот сетевой принтер на LPT1, и делается
это из командной строки так:

net use LPT1 \\MyComputer\MyPrinter

Если всё пройдёт успешно, на этот LPT1 уже и можно делать С:\СОРY /B TESTFILE.BIN LPT1 .

Но тут и возникают всякие "но"... Windows XP, как говорят, не любит "мапить" на LPT1.
Поэтому лучше сделать net use LPT2 \\MyComputer\MyPrinter и потом уже: С:\СОРY /B TESTFILE.BIN LPT2 .

Также, говорят, что если в компьютере есть настоящие LPT1 и LPT2 - конфликт может быть
с ними, тогда лучше "НетЮзать" несуществующий LPT - да хоть LPT5 ... 8)

Мы можем проверить, как всё удачно или неудачно "замапилось":
С:\net use LPT1
Local name LPT1
Remote name \\MyComputer\MyPrinter
Resource type Print
Status OK
# Opens 0
# Connections 1
The command was completed successfully.

Это - успешно... примерно то же самое будет и на русской Венде, и самое главное, это:
Status OK - без него печатать не будет и в Windows 7 придется ткнуть иконку принтера
и выбрать "Присоединить".

Если что-то не так - можно отсоединить сетевой принтер от LPT:
net use LPT1 /d
LPT1 was deleted successfully.

---------------------------------------------------------------------------------------
Всё, что сказано выше, под Windows ХР должно сработать без проблем...
а вот под под Windows 7 делаем всё то же, но начинаются проблемы... :osad:

Если кто мне не верит, минимум вот столько людей не могут решить эту проблему:
https://serverfault.com/questions/555326/access-denied-when-using-copy-to-lpt-port
http://forum.vingrad.ru/forum/topic-328349/kw-windows-copy-prn-сеть/view-all.html
https://social.technet.microsoft.com/Forums/windows/en-US/b33638c8-1032-4775-82e2-21f457cd0b70/net-use-lpt-access-denied?forum=w7itpronetworking
https://superuser.com/questions/420149/how-can-i-copy-a-print-file-to-a-networked-printer
http://forum.wincmd.ru/viewtopic.php?p=100874

Под Windows 7 делаем всё то же, но получается вот что:
net use LPT2 \\MyComputer\MyPrinter
команда успешно выполнена

copy %1 LPT2
Отказано в доступе.(он же access denied)
Скопировано файлов 0.

net use LPT2 /delete
LPT2 успешно удален


И никакие страшные заклинания не берут эту проблему! И звук бубна бьёт по собственной голове! :esurprised:
(Я не буду приводить ошибочные решения...)
Но в итоге ларчик открылся очень просто:
Quote:
When printing some data to a connected printed via the dos COPY command:
it works great when the printer is set to "spool" but when using "print directly to printer" windows returns an access denied error.

The user is an administrator. I have tried adjusting the Win32/Spool directory to allow full RW permissions.
I've had the issue under Windows 7 and Windows 8.
The printer is connected via USB and is shared using NET USE as LPT3 via local ip,
ex: net use lpt3 \127.0.0.1\printer /persistent:yes

То есть, в свойствах принтера надо поставить галочки на вкладке чаще всего Дополнительно:
* Использовать очередь печати
* Начинать печать после помещения в очередь всего задания .

Attachment:
2_PRINT1.gif
2_PRINT1.gif [ 14.1 KiB | Viewed 10375 times ]

и вот тут-то мы и получает желанное: :kruto:

copy %1 LPT2
Скопировано файлов 1.


Я надеюсь, что это поможет всем страдальцам (как и мне, мучавшемуся двое суток), ибо наш форум
хорошо индексируется в поисковиках, а я не могу рассказать про это на стольких площадках... :mrgreen:

_________________
iLavr


06 Jul 2017 19:35
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Может возникнуть вопрос - а нафига все эти пляски с бубном?

У людей, которые не пытаются использовать copy /b в своих корыстных целях, это чаще
всего случается, когда человек работает дома или удаленно, и у него нет того суперплоттера
или принтера, что есть на работе.
В этом случае устанавливаются драйвера нужного принтера и ставится галочка "печать в файл".
При этом создается бинарник типа filename.prn, содержимое которого и надо побайтно выдать
потом на реальный LPT, ну или "на принтер": С:\СОРY /B filename.prn LPT1

Интересно, что М$ прониклись этой необходимостью и написали утилиту RawPrint...
Забавно было, что без настроек принтера из предыдущего поста она наглухо висла без каких-либо
сообщений. А после правильной настройки - начала печатать... :wink:

И такие утилиты пишут многие люди, поскольку с С:\СОРY /B ... на старших Вендах есть проблема.

Так что если у кого проблема не решится описаным мной выше методом, вот тут один джентльмен
ряд подобных утилит подробно рассмотрел и дал ссылки на скачивание:
"Raw" Printing for Windows 8 or 10 http://www.columbia.edu/~em36/windowsrawprint.html

_________________
iLavr


07 Jul 2017 06:12
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
У людей, которые не пытаются использовать copy /b в своих корыстных целях...

А теперь приступим к самим "корыстным целям", ибо не только печатать я купил этот переходник,
а чтобы иметь возможность поуправлять разными железками через этот суррогатный LPT-порт...

Я знаю о существовании переходников на Atmega и т.п., позволяющих эмулировать LPT на уровне портов,
но целью всей затеи было именно на распространенном переходнике USB-->LPT и сугубо собственными
средствами самой Венды осуществить такое управление.
Почему такое ограничение? Да довольно строго везде стало теперь со сторонним программным обеспечением,
и не на всякую машину левый софт разрешат поставить.
А в этой ситуации - девайс для USB-порта стандартный, установки софта не требует, и команда
COPY пока еще существует даже в Венде 10 (как мне говорили... :wink: )

Итак, если команда С:\СОРY /B filename.prn LPTх сработала при выводе на принтер, убираем
этот принтер, и будем обманывать наш суррогатный LPT, чтобы он заработал на вывод без принтера... 8)

Поскольку переходник USB-Bitronix Gembird CUM-360 оканчивается коннектором Centronics-36...
Image
... то придется сделать "заглушку" по следующей схеме:
Image

У меня это получилось вот так:

Image

Image

Если теперь подключить переходник к USB-порту, и "принтер" Венды скажет, что он "готов"...

Image

Можно попробовать "попечатать" в эту нашу заглушку... :lol:

Для начала можно попробовать "распечатать" очень большой графический файл в 30-50 копиях,
или большой документ MS_Word тоже в 50-70 копиях, только в этом случае можно реально увидеть,
как заморгают светодиоды на линиях D0...D7.
Дело в том, что с этой заглушкой суррогатный LPT работает с максимальной скоростью, и светодиоды
моргают очень шустро - заодно интересно посмотреть, как в буфере принтера с пулеметной скоростью
"отщелкиваются" все 50..70 заданий печати.
Если есть желание увидеть на светодиодах что-то конкретное, чтобы убедиться в правильности вывода
байт, можно подготовить большой *.bmp-файл - наполовину черный, наполовину белый.
Или же заполненный характерными сигнатурами типа 0ААН, 55Н, 0С0Н, 03Н - это вертикальные полосы
разной ширины.

Если "печать" из Ворда или Граф-редактора прошла успешно, то приступаем к самому "вкусному":
С:\СОРY /B filename.bin LPTх :kruto:

Image

Все команды, которые видны на этом скриншоте, были обсуждены в предыдущих постах.
В качестве *.bin-файла я подготовил заранее *.bmp-рисунок с черными и белыми полосами...

Я не стал делать фото "моргающих" светодиодов (как будет видно дальше - они у меня на фото сливаются),
но С:\СОРY /B 1_share.bmp LPT2 - у меня сработал как из пушки! :ebiggrin:

Ну что ж... если из схемы нашей "заглушки", изображающей "принтер", убрать светодиоды, и на линии
D0...D7 прицепить, скажем, вот такую схему:

Image

то уже можно вполне успешно поуправлять LCD-индикатором через USB-порт...
Можно сделать и много чего другого интересного... так что:

P.S. Продолжение следует... :wink:

_________________
iLavr


08 Jul 2017 19:06
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Несколько неудобным оказалсь, что переходник USB-2-LPT_Bitronix Gembird CUM-360 оканчивается
разъёмом Centronics-36, а у меня уже 3 ленточных кабеля распаяны под стандартный разъём LPT - DB-25.

Поэтому, прежде чем двигаться дальше, я решил изготовить переходничок Centronics-36_2_DB-25.
В принципе, они есть такие в продаже...

Image

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

Правильную коммутацию такого переходника (Centronics-36_2_DB-25), на мой взгляд, верно
отображает следующий рисунок:
Image

Исходя из размеров коннекторов, я изготовил вот такую симпатичную коробочку:

Image Image

И в ней всю распайку, согласно картинке выше, выполнил:

Image

Image

В итоге получился вот такой симпатичный переходничок, ничуть не хуже, чем с АлиЭкспресса...

Image

И даже лучше, поскольку в него в любой момент можно безболезненно заглянуть, если появится
необходимость что-то добавить или подправить...
(Я, к сожалению, не смог заглянуть в сам USB-Bitronix Gembird CUM-360 - собран на защелках,
поэтому побоялся я его сломать...
)

Для тестирования LPT-порта с коннектором DB-25 схема "заглушки" несколько иная по распайке,
хотя совершенно идентичная по сути:

Image

Кстати говоря, схемы эти я не сам придумал, они рекомендуются для проверки LPT-порта с коннектором
DB-25 и кабеля к принтеру
, в том случае, если принтер не печатает.
Эта схема проверяет работоспособность самогО (любого) порта LPT, а схема из предыдущего поста -
проверяет исправность кабеля к принтеру.
Оригинал документа, сконвертированного мной в файл M$-Word можно взять здесь.

Осталось проверить работу обоих переходников на "заглушку" печати:

Image

Тесты все те же, что и в предыдущем топике (повторять не буду) прошли успешно! :kruto:

Image

И поэтому...

P.S. Продолжение следует... :wink:

_________________
iLavr


09 Jul 2017 07:10
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Не будем долго тянуть кота за ...хвост и закончим эту эпопею с USB-Bitronix Gembird CUM-360 удачным
финалом, ради которого это всё, собственно, и затевалось! :mrgreen:
(Ибо я с завтрашнего дня в отпуске, и чувствую я, что накопившиеся домашние дела мне поиграть в приятные
наши игры, похоже, что и не дадут...
:-? )

А затевалось всё, конечно же, чтобы самым простым способом поуправлять моими микропроцессорными
недо-конструкциям без ПЗУ с загрузкой через LPT на UB880 и на KР580BM80A.
Причем сделать это на компьютерах, где LPT-порта как такового нет...

И оставался всего один шаг: воткнуть загрузочный кабель в мои переходники и загрузить в микро-ЭВМ
рабочую программу...

Image

Теперь волшебное слово: С:\СОРY /B Z80TEST2.PRN LPT2 8)

Image

И в этот раз программа загрузилась и всё заработало с пол-пинка! :kruto:
(Плата с UB880 выполняет ту же самую программу, что приведена здесь, но загруженную через USB2LPT!)

Image

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


P.S. Вот тут и видно, что на фото у меня "моргающие" светодиоды сливаются... Реально программа
зажигает их в линейку подряд, а потом гасит по одному, и это происходит в цикле.

_________________
iLavr


09 Jul 2017 08:22
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Всякий очередной раз, когда возникает необходимость покомандовать чем-то через LPT, с трудом
вспоминаю, что у него там инвертировано, что не инвертировано, где и какие регистры...

И обычно начинаю искать по всем дискам и флешкам вот эти три полезных картинки:
Attachment:
LPT_K1.gif
LPT_K1.gif [ 106.15 KiB | Viewed 7393 times ]

Attachment:
LPT_K2.gif
LPT_K2.gif [ 80.78 KiB | Viewed 7393 times ]

Attachment:
LPT_K3.gif
LPT_K3.gif [ 142.8 KiB | Viewed 7393 times ]

Пусть будут здесь, возможно, эта информация будет оперативно полезна не только мне.

К тому же здесь LPT-порт на мелкой логике разрисован, что тоже при необходимости не сразу найдёшь.

_________________
iLavr


24 Oct 2019 10:22
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22412
Location: Silicon Valley
Reply with quote
О круто - спасибо :)

А то я тоже всякий раз гуглю ;)

_________________
:dj: https://mastodon.social/@Shaos


26 Oct 2019 11:04
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
К тому же здесь LPT-порт на мелкой логике разрисован, что тоже при необходимости не сразу найдёшь.

А LPT-порт на мелкой логике-то неправильно разрисован зело! :o Вот тебе и печатный источник... :osad:

Начал я собирать программатор для КР1878ВЕ1, сверяюсь с этой схемой...
А схема-то неверная! У LPT-порта-то в Control Register биты 0, 1, 3 (сигналы Strobe, Auto LF, Select In)
инвертируются, а бит 2 (сигнал Init) — не инвертируется!

На схеме же они все четверо инвертированы... :-?

Далее, в Status Register инвертируется только бит 7 (сигнал Busy), тогда как на схеме инвертированы
зачем-то ACK и ERROR, что неверно...

Правильно инверсию отдельных разрядов отражает по меньшей мере такой рисунок:
Attachment:
Lpt03.gif
Lpt03.gif [ 11.43 KiB | Viewed 5837 times ]

Также верно инверсия обозначена в программе контроля LPT-порта:
Attachment:
LPT-monitor.gif
LPT-monitor.gif [ 9.15 KiB | Viewed 5837 times ]

А вот со схемой этой LPT-порта выше придётся разобраться... явно ошибки в ней есть... :-?

_________________
iLavr


27 Oct 2019 13:10
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 08:08
Posts: 7777
Location: Россия
Reply with quote
В общем очень удачно попалась по этому поводу статейка "Карта параллельного порта LPT".

На этот раз прохождение всех сигналов тщательно проверил, схема правильная:
Attachment:
LPT_card.gif
LPT_card.gif [ 39.58 KiB | Viewed 5837 times ]

А вот схему двумя постами выше явно придётся поправить... :-?

Кстати говоря, как мне кажется, путаница с LPT-портом происходит из-за того, что промаркированы
сигналы так, как являются активными в протоколе Centronics, а не так, как выходят аппаратно.

_________________
iLavr


29 Nov 2020 10:50
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 25 posts ]  Go to page Previous  1, 2

Who is online

Users browsing this forum: No registered users and 12 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.