OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Пятница, 06 Декабрь, 2019 13:12

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 40 ]  На страницу 1, 2  След.
Автор Сообщение
СообщениеДобавлено: Вторник, 22 Ноябрь, 2005 17:13 

Зарегистрирован: Среда, 16 Ноябрь, 2005 18:42
Сообщения: 42
Откуда: Ярославль
А есть ли в BB модуль работы с COM-портом?

(р-р колл-ции) карточка: http://oberoncore.ru/bbcc/subs/comm/v24


Последний раз редактировалось Евгений Темиргалеев Четверг, 06 Июнь, 2013 20:48, всего редактировалось 2 раз(а).
карточка коллекции


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 22 Ноябрь, 2005 21:03 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9161
Откуда: Россия, Орёл
Нет, такого модуля я не видел.
А зачем? Через машинные коды - в NT в пользовательском кольце прямое обращение к COM-порту, как я помню, запрещено.
А для "нормального" доступа - есть же системный вызов. Вот только не помню, какой... OpenIODevice?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 23 Ноябрь, 2005 09:35 

Зарегистрирован: Среда, 16 Ноябрь, 2005 18:42
Сообщения: 42
Откуда: Ярославль
Илья Ермаков писал(а):
А зачем?

Как я уже рассказывал, я хочу попробовать реализовать что-то типа POS на BlackBox. Очень много торгового оборудования работает через COM порт (сканеры штрих кода, ККМ, считыватели RFID меток и т.п.). Требуется асинхронная работа с портом.
Поэтому я и хочу чтобы был класс (модуль) который бы предоставлял мне сервис асинхронной работы с портом.
Илья Ермаков писал(а):
А для "нормального" доступа - есть же системный вызов. Вот только не помню, какой... OpenIODevice?

А это где? :) В ББ? Если да, то в каком модуле


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 23 Ноябрь, 2005 18:54 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9161
Откуда: Россия, Орёл
В WinAPI. Модули-заголовки из подсистемы Win.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 28 Ноябрь, 2005 10:32 

Зарегистрирован: Понедельник, 28 Ноябрь, 2005 10:28
Сообщения: 1208
А CommV24 недостаточно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Понедельник, 28 Ноябрь, 2005 11:57 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9161
Откуда: Россия, Орёл
Честно говоря, не смотрел пока. Надо глянуть. Сейчас как раз перевожу документацию Comm. Но мне нужен больше TCP/IP...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вторник, 13 Февраль, 2007 21:07 

Зарегистрирован: Среда, 07 Февраль, 2007 21:34
Сообщения: 3
Откуда: Нижний Новгород
работа с com портами (RS-232)
пример
CommV24.Open(device, baud,{ },conn);
CommV24.SetBuffers(conn,12,12);
CommV24.ReceiveBytes(conn, x, 0, 12 );
И BlackBox ждет получения данных, не реагируя ни на что, а данные могут и не прийти если внешнее устройство не отвечает.
Хотелось бы продолжать работу и по приходу данных обработать их.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 14 Февраль, 2007 01:53 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9161
Откуда: Россия, Орёл
Ну дык... Лечится только многопоточностью :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 14 Февраль, 2007 11:35 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2318
Откуда: Россия, Томск
Илья Ермаков писал(а):
Ну дык... Лечится только многопоточностью :-)

Илья, это реклама "волшебной пилюли"? :)
Давно работаю с COM-портом в BlackBox без зависаний. Достаточно перед чтением проверять доступность необходимого количества данных с помощью процедуры CommV24.Available и читать не более того, сколько доступно.
Для организации ожидания использовать Services.Action.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Среда, 14 Февраль, 2007 16:12 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9161
Откуда: Россия, Орёл
Ну, можно, конечно, и так - благо Action штука неплохая :-)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Среда, 12 Ноябрь, 2008 21:11 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9161
Откуда: Россия, Орёл
Уважаемые коллеги, можно пример работы с COM-портом?

У меня один из дитёв в институте что-то паяет там и рвётся поэкспериментировать с вводом-выводом из ББ на порт.
У нас что-то даже не получилось открыть порт - возвращается NILовой Connection.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Среда, 12 Ноябрь, 2008 22:37 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2318
Откуда: Россия, Томск
Илья Ермаков писал(а):
Уважаемые коллеги, можно пример работы с COM-портом?
Из моей подсистемы Mate.
Вложение:
Комментарий к файлу: Модуль для проверки связи
TestLink.odc [3.59 КБ]
Скачиваний: 779
Модуль для проверки связи, позволяет пообщаться в текстовом режиме - например, между двумя компьютерами с ББ, - или получить любые двоичные данные. Отправляемый текст пишется в коммандере, принимаемый выводится в журнал. Для приёма надо вручную тыкать коммандер MateTestLink.Receive.
Стандартный модуль CommV24 был несколько модифицирован.
Вложение:
Комментарий к файлу: Модифицированный CommV24
V24.odc [18.72 КБ]
Скачиваний: 775
История модификаций описана в заголовке. Из основного: модуль сделан драйвером для Streams, добавлены кое-какие опции и ParseParams. Поскольку Streams требует неблокирующей работы, сделан небольшой трюк, описанный в комментарии внутри NewStream. При создании потока в качестве remoteAddr указывается строка с параметрами COM-порта через запятую. Например: "COM4" или "COM4,9600" или "\\.\COM4,8,1,9600,DTRon". Первым должно идти имя устройства, далее порядок параметров произвольный.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Среда, 12 Ноябрь, 2008 23:33 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9161
Откуда: Россия, Орёл
Спасибо!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Четверг, 13 Ноябрь, 2008 06:34 
Аватара пользователя

Зарегистрирован: Пятница, 25 Ноябрь, 2005 12:02
Сообщения: 8209
Откуда: Троицк, Москва
Александр Ильин писал(а):
...Модуль для проверки связи, позволяет пообщаться в текстовом режиме - например, между двумя компьютерами с ББ...

Хороший примерчик.

А бывают ли еще шнурики через COM-порты соединяться?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Четверг, 13 Ноябрь, 2008 07:09 
Аватара пользователя

Зарегистрирован: Вторник, 19 Сентябрь, 2006 21:54
Сообщения: 2318
Откуда: Россия, Томск
Info21 писал(а):
А бывают ли еще шнурики через COM-порты соединяться?
Как же не бывать? Бывают. А если нету, то всегда сделать можно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Четверг, 13 Ноябрь, 2008 18:49 

Зарегистрирован: Воскресенье, 28 Май, 2006 22:12
Сообщения: 1440
Info21 писал(а):
А бывают ли еще шнурики через COM-порты соединяться?

Бывают. И даже - очень...
Тока смотрите там на линии приёма/передачи в зависимости от "мама"/"папа" и что с чем соединяется...
А то у нас паяльщики в цеху ОБЯЗАТЕЛЬНО в каждом изделии путают! Как здрасьте... :twisted:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Четверг, 13 Ноябрь, 2008 20:10 
Аватара пользователя

Зарегистрирован: Суббота, 15 Март, 2008 20:00
Сообщения: 297
Откуда: Київ, Україна
Info21 писал(а):
А бывают ли еще шнурики через COM-порты соединяться?

Проще всего купить разъемы, и спаять нужный шнур.
Но будьте бдительны, сейчас попадаются Китайские разъемы, с зеркальной нумерацией пинов :lol: т.ч. лучше глянуть в доку перед тем, как паять


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Четверг, 13 Ноябрь, 2008 20:15 
Администратор

Зарегистрирован: Вторник, 15 Ноябрь, 2005 01:14
Сообщения: 4354
Откуда: Россия, Орёл
Info21 писал(а):
А бывают ли еще шнурики через COM-порты соединяться?

Бывают. Только последнее время COM-порта можно не обнаружить. :mrgreen:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Четверг, 13 Ноябрь, 2008 20:31 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9161
Откуда: Россия, Орёл
А USB ведь логически в Виндах как разновидность COM завиртуален? Можно так же работать? И шнуры небось спаять можно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: COM-порт
СообщениеДобавлено: Четверг, 13 Ноябрь, 2008 20:58 

Зарегистрирован: Понедельник, 05 Июнь, 2006 09:49
Сообщения: 327
Откуда: Ленинград, Емельянов Алексей Николаевич
Ну, я не знаю как где, но у нас В Питере готовые "шнуры" для com висят в каждом магазине(компьютерном). Длина приблизительно 1.5 м, стоят около 50 р. Называются почему-то "нульмодемным" кабелем. Для работы через USB, как по com, нужен переходник, стоит порядка 400р.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 40 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 0


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2019, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB