Форум
Написать нам
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: as-master  
Работа с LPT портом
Snow_IrbisДата: Суббота, 21 Августа 2010, 00:40 | Сообщение # 1
Новый участник
Группа: Заблокированные
Сообщений: 2
Репутация: 2
Награды: 1
Статус: Offline
Quote (Сергей)
через плагин

Ссылка есть ?

Quote (Lab-service)
скачал себе сегодня впервые ммб,а там и проект по паралельному порту нашёлся,
Snow_Irbis, можно попробовать поработать над взаимодействием проекта на буке с ммб для управления портом

Я для таких целей использую Си , так как в большинстве случаев параллельный порт не подходит для сопряжения внешних устройств , в большинстве случаев на практике приходиться сопрягать устройство с ПК расстояние между которыми не менее 100-200 метров , в таких случаях обычно используется преобразователь RS-232->RS-485 :)

 
Lab-serviceДата: Суббота, 21 Августа 2010, 11:03 | Сообщение # 2
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
А я сегодня ночью наконец-то научился из необука управлять портом.
Сделал,что-то типа отдельного модуля.Вообщем управлять этой шнягой нужно буфером обмена,ну просто из текста скопировать число,от 0 до 225,а для выхода из проги "exit".
Это,конечно неочень хорощо,что управляеться буфером,ну если приложения терминальные,типа моего,то этот способ тоже подойдёт.
Внимание!!!Придупреждаю сразу,на компе должно быть оперативки неменьше гига,и желательно процессор получше.
Иначе.... redface "Сбой приложений из-за преостановки рабочей станции"
Прикрепления: 11112.part1.rar (390.6 Kb)


Сообщение отредактировал Lab-service - Суббота, 21 Августа 2010, 11:38
 
Lab-serviceДата: Суббота, 21 Августа 2010, 11:35 | Сообщение # 3
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
.

Добавлено (21 Август 2010, 11:13)
---------------------------------------------
Я выложил ехе'шник потому,что написана прога на ммб.
Советую закрыть все несохранённые текстовые файлы или проекты,перед началом запуска,иначе можете потерять несохранившияся проект.
Просто я-же незнаю как прога поведёт себя у Вас на компе.
А,и ещё,незапускайте более одного проекта,иначе прога займёт всю оперативку,и Вы несможете преостановить работу программы.

Добавлено (21 Август 2010, 11:32)
---------------------------------------------
Прога в двух архивах,распаковывать нужно part1.

Добавлено (21 Август 2010, 11:35)
---------------------------------------------
Snow_Irbis, можно поподробнее насчёт

Quote (Snow_Irbis)
преобразователь RS-232->RS-485
Прикрепления: 11112.part2.rar (145.0 Kb)
 
Snow_IrbisДата: Суббота, 21 Августа 2010, 17:04 | Сообщение # 4
Новый участник
Группа: Заблокированные
Сообщений: 2
Репутация: 2
Награды: 1
Статус: Offline
Quote (Lab-service)
Snow_Irbis, можно поподробнее насчёт

Вот тут http://www.shematic.net/page-161.html найдешь схему самодельного преобразователя , хотя полно промышленного производства на радио-рынках

Сообщение отредактировал Snow_Irbis - Суббота, 21 Августа 2010, 17:17
 
Lab-serviceДата: Суббота, 21 Августа 2010, 17:16 | Сообщение # 5
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
:) СПС
 
Alex3AДата: Воскресенье, 22 Августа 2010, 04:08 | Сообщение # 6
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
Lab-service, обычно кофейники на мелкопроцессорах фунциклюют, и имеют сервисный порт (сом), пошурши у производителей, мож есть протокол обмена с нужными функциями.
Quote (Snow_Irbis)
ПК расстояние между которыми не менее 100-200 метров , в таких случаях обычно используется преобразователь RS-232->RS-485

RS-232 до 100 метров, потенциал, мин. 3 провода(нульмодем), RS-485 до 1200 метров диф сигнал, 2 и 4 проводный. RS-232->RS-485, мелкосхема max 485
Quote (Lab-service)
Внимание!!!Придупреждаю сразу,на компе должно быть оперативки неменьше гига,и желательно процессор получше.
Иначе.... "Сбой приложений из-за преостановки рабочей станции"

Да ты гониш :D
Это ж надо так нахомутать, лечись срочно :D Всегда, самого паганого компа, даже с озу в 16к, хватало на такие бредни, ты че там рекурсию сварганил :D
 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 14:14 | Сообщение # 7
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
Quote (Alex3A)
Да ты гониш :D
Это ж надо так нахомутать, лечись срочно :D Всегда, самого паганого компа, даже с озу в 16к, хватало на такие бредни, ты че там рекурсию сварганил :D

Да проблема в ммбэшном скрипте,проц грузиться на 120%,и если прога невысвечивает никаких ошибок,то минут через сорок он уже использует для своих целей оперативку на 90%,после чего идёт приостановка рабочей станции,ну вообщем комп перезагружаеться я даже и незнаю что делать?
Вот код
Code
For Counter=1 To 10000
   Clipboard("GET","mmb$")
   If (mmb$<>'exit' & mmb$>'') Then
     q$='888 ' + mmb$+''
     Pause("20")
     Run("<Embedded>\PB_LPT.exe","q$")
   Else
     Pause("10")
   End
   If (mmb$='exit') Then
     Exit()
   Else
     Pause("10")
   End
Next Counter

 
DEMBELДата: Воскресенье, 22 Августа 2010, 14:39 | Сообщение # 8
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
Quote (Lab-service)
я даже и незнаю что делать?

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




Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 15:16 | Сообщение # 9
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
Quote (DEMBEL)
Придумал же, 10000 оборотов цикла... так не только проц, весь комп спалить можно :D
redface
Просто я не ммбшник
Quote (DEMBEL)
то что ты хочешь, делается через ScriptTimer

Спасибо :)

Добавлено (22 Август 2010, 15:16)
---------------------------------------------
Alex3A,

Quote (Alex3A)
пошурши у производителей, мож есть протокол обмена с нужными функциями.

Для меня это слишком сложно,интелекту нехватит,я хочу через лрт
DEMBEL,
Quote (DEMBEL)
можно просто периодически запускать скрипт мониторинга переменной Clipboard

Я вроде так и делаю,на нужной странице запускаеться,на ненужной преостанавливаеться
А щас вот начались другие проблемы,главная прога,написаная на буке сделана в виде терминала,тоесть нету доступа к панели задачь,точнее раньше небыло,а щас почему-то при запуске мониторинга переменной Clipboard появляеться панель,и окно становиться неактивным,с клавы кнопки ненажимаються,нужно сначала по основному окну щёлкнуть мышкой.
А мне этого ненужно!
Вроде всё правильно сделал,уже раз 300 проверил,наверно бук тупит?
 
DEMBELДата: Воскресенье, 22 Августа 2010, 16:52 | Сообщение # 10
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
так сразу и не поймешь из-за чего проблема. вообще, делал бы ты уже в какой нибудь одной проге, авось проблем бы не было.
надеюсь ты разобрался со ScriptTimer и как с его помощью мониторить переменную clipboard...




Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Alex3AДата: Воскресенье, 22 Августа 2010, 17:03 | Сообщение # 11
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
И кто такой PB_LPT.exe, и нафига его запускать 10000 :D
И что он делает, когда считает состояние.
И нафига Pause("20"), это 100 раз в секунду! И вообще, паузы менее 50 не актуальны,
да и PB_LPT.exe у тебя сколь штук одновременно запущеных. Раз в секунду мало?
И че лпт плагин Toizy тебе не катит?
В общем, лобуду какую то строиш.
 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 17:15 | Сообщение # 12
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
Quote (Alex3A)
И кто такой PB_LPT.exe

Это чтоб отправлять в порт данные \
Quote (Alex3A)
и нафига его запускать 10000

Ну я просто незнал,что этой командой я его столько раз запускаю
pardon

Добавлено (22 Август 2010, 17:15)
---------------------------------------------
Спасибо,буду исправлять :)

 
DEMBELДата: Воскресенье, 22 Августа 2010, 17:25 | Сообщение # 13
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline
Quote (Lab-service)
Ну я просто незнал,что этой командой я его столько раз запускаю

как не знал, а пишешь - Run("<Embedded>\PB_LPT.exe","q$"), и так в цикле 10000 раз :) Если рассуждать в рамках написанного, то где команда закрытия программы pb_lpt.exe (если она нужна)? Вот они и открываются постоянно и глушат тебе систему :) надо тебе что-то придумать с этим, если уж ты работаешь со сторонними программами.




Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 17:31 | Сообщение # 14
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
Quote (DEMBEL)

как не знал, а пишешь - Run("<Embedded>\PB_LPT.exe","q$"), и так в цикле 10000 раз :)

Да я этот пример,где-то в разделе ммб взял
Я вообще-то хотел,что-б скрипт повторялся и повторялся всё время.
Мне наверное нужно вконце скрипта написать строчку что-б закрывать PB_LPT.exe ???
 
Alex3AДата: Воскресенье, 22 Августа 2010, 17:43 | Сообщение # 15
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
Quote (Lab-service)
Это чтоб отправлять в порт данные \

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

n1=255 передаваемое число
n2 = 888 очевидно выбор режима
PluginSet("PlugIn","n1")
PluginSet("PlugIn","n2")
PluginRun("PlugIn","WriteData")

чтение
Code

n2 = 888
PluginSet("PlugIn","n2")
PluginRun("PlugIn","ReadData")
PluginGet("PlugIn","data") в переменной data считанное число
Message("","data")


Сообщение отредактировал Alex3A - Воскресенье, 22 Августа 2010, 17:45
 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 17:55 | Сообщение # 16
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
Quote (Alex3A)
кто его закрывает

При переходе на другую страницу,оно закрываеться.
Quote (Alex3A)
бери Димку за яйцо

redface а кто такой димка?

Добавлено (22 Август 2010, 17:55)
---------------------------------------------

Quote (Alex3A)
n2 = 888 PluginSet("PlugIn","n2") PluginRun("PlugIn","ReadData") PluginGet("PlugIn","data") в переменной data считанное число Message("","data")

тут вроде не 888,а 889

 
Alex3AДата: Воскресенье, 22 Августа 2010, 18:04 | Сообщение # 17
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
Quote (Lab-service)
При переходе на другую страницу,оно закрываеться.

PB_LPT.exe?
Quote (Lab-service)
а кто такой димка?

LPT Plugin v1.0
toizy @ toizy. ru
toizy @ mail. ru
Автор плагина, участник форума.

Сообщение отредактировал Alex3A - Воскресенье, 22 Августа 2010, 19:46
 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 18:10 | Сообщение # 18
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
Quote (Alex3A)
PB_LPT.exe?

Да
Quote (Alex3A)
LPT Plugin v1.0
А незнаешь может где нить можно скачать с хэлпом?
Я качал,но хэлпа небыло,спросил у toizy,какие плагину нужно слать команды,а он мне ответил читай справку по ммб
 
SergДата: Воскресенье, 22 Августа 2010, 19:27 | Сообщение # 19
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Хелп к плагину не нужен. Там объяснять то нечего. Послал/получил вот и всё.

Добавлено (22 Август 2010, 19:27)
---------------------------------------------
Говори точно что тебе не ясно?


 
Alex3AДата: Воскресенье, 22 Августа 2010, 19:47 | Сообщение # 20
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
Quote (Serg)
Говори точно что тебе не ясно?

Ему надо на прием, а не на передачу.
 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 19:51 | Сообщение # 21
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
да

Добавлено (22 Август 2010, 19:51)
---------------------------------------------
я только,что пробывал,он читает тот пин,который мы только что программно включили а мне нужно,чтобы я перемкнул пин и он увидел,что какой-то пин перемкнули

 
SergДата: Воскресенье, 22 Августа 2010, 19:53 | Сообщение # 22
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Щас покажу...минут 20

 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 20:09 | Сообщение # 23
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
вот допустим у меня купброприемник подключен к порту,я встовляю чирик,а прога увидела,что типа деньги внесены и перевела на нужную страницу

Добавлено (22 Август 2010, 19:54)
---------------------------------------------
ок ждемс :)

Добавлено (22 Август 2010, 20:09)
---------------------------------------------
мне нужно прочитать данные с 13-10 и15 пина

 
SergДата: Воскресенье, 22 Августа 2010, 20:17 | Сообщение # 24
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Пришлось вилку спаять...
inpout32.dll должен быть в каталоге с проектом (естественно и .exe программой)
В проекте всё расписано.

Добавлено (22 Август 2010, 20:17)
---------------------------------------------

Quote
я только,что пробывал,он читает тот пин,который мы только что программно включили а мне нужно,чтобы я перемкнул пин и он увидел,что какой-то пин перемкнули

Ты получал число, которое находится в порту 888.
Чтобы получить число при замыкании пина необходимо указать порт 889 (Status) (пины 10,11,12,13,15)

Почитай статейку про чтение и запись в порт

Прикрепления: LPT.zip (22.4 Kb) · 0995345.png (7.9 Kb)




Сообщение отредактировал Serg - Воскресенье, 22 Августа 2010, 20:18
 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 20:26 | Сообщение # 25
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
спасибо всё работает thumbs_up
вручу ка я тебе наградую.
блин,только вот проблемы,пишет 126 если разомкнуты,когда смыкаю 13 пин,вместо 111 пишет 110 может у меня чё-то в компе перемыкает или чёто с портом? Блин я рад всё работает!
Ещё раз большое человеческое СПАСИБО ;)

Добавлено (22 Август 2010, 20:26)
---------------------------------------------
:'( блин,я нарадостях аш рыдаю!
Ещё раз СПА-СИ-БО

 
SergДата: Воскресенье, 22 Августа 2010, 20:29 | Сообщение # 26
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Quote
блин,только вот проблемы,пишет 126 если разомкнуты,когда смыкаю 13 пин,вместо 111 пишет 110

Проверь те ли пины замыкаеш.На корпусе и на вилке написаны цифры каждого пина.
Может режим порта иной стоит...Это в GOOGLE...


 
Lab-serviceДата: Воскресенье, 22 Августа 2010, 20:37 | Сообщение # 27
Любопытный
Группа: Проверенные
Сообщений: 52
Репутация: 0
Награды: 1
Статус: Offline
скорей всего ты просто числа перепутал,потому-что я другой прогой пробовал там такие-же числа как и твоя прога показывает ты написал,что когда все разомкнуты,то выводит число 127 а в другой,нетвоей проге написано что 126.
ну это неважно оно немишает
 
SergДата: Воскресенье, 22 Августа 2010, 20:39 | Сообщение # 28
Ветеран форума
Группа: Проверенные
Сообщений: 959
Репутация: 6
Награды: 8
Статус: Offline
Я напсиал всё верно.По данным из порта.

 
DEMBELДата: Воскресенье, 22 Августа 2010, 20:41 | Сообщение # 29
Наш дизайнер
Группа: Модераторы
Сообщений: 2266
Репутация: 135
Награды: 32
Статус: Offline




Win7x64 SP1 Neobook v5.70 (Trial)
WinXP SP3 Neobook v5.62
 
Alex3AДата: Воскресенье, 22 Августа 2010, 20:43 | Сообщение # 30
Друг клуба ММВ
Группа: Проверенные
Сообщений: 2646
Репутация: 39
Награды: 11
Статус: Offline
Quote (Lab-service)
блин,я нарадостях аш рыдаю!

Только смотри, если даже самый хилый комп вдруг умрет от твоей проги, подходиш к стенке и бъешся головой, до тех пор, пока не сообразиш где нахомутал в проге :D
Считывание портов одна из простейших операций, и ничего грузить не магет :D
У меня идет считывание минимум с 6 ком портов, и никаких нагрузок от такой работы нет.
 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск: