Работа с USB
Модератор: Модераторы
ttyS*
dionic
Обращаешься как к COM порту с именем ttyUSB* (*-цифра устройства в системе).
Спасибо за совет, пробывал, так он его открывает нормально, но когда команду ему туда кидаю, ноль реакции...
А вообще ты имеешь ввиду обращаться так через компоненты synapse?
Добавлено спустя 11 минут 40 секунд:
Light13 писал(а):ttyS*
А это что за комментарий? =) Поподробнее можно?
это файлы com портов в linux, например, /dev/ttyS0
Думаю будет интересно: http://www.freepascal.ru/forum/viewtopic.php?f=13&t=2624&st=0&sk=t&sd=a&start=45
Думаю будет интересно: http://www.freepascal.ru/forum/viewtopic.php?f=13&t=2624&st=0&sk=t&sd=a&start=45
это файлы com портов в linux, например, /dev/ttyS0
Думаю будет интересно: http://www.freepascal.ru/forum/viewtopi ... a&start=45
А при чем тут com порт то? Я же под Linux, там модем не определяется как com порт...Это в винде ставятся дрова и можно работать с usb модемом как с com портом. В винде у меня всё с ним работает, мне в linux нуно =)
почитай этот лист по линку 
нашел при поиске по ttyS
нашел при поиске по ttyS
Light13 писал(а):почитай этот лист по линку
нашел при поиске по ttyS
Ура всё вроде получилось! Ошибка была в том , что неправильно писал номер название нужно было ttyACM0, туда модем подсоединён, а не к ttyUSB0, dmesg помог -). Так что synaser даже с USB пашет... Спасибо всем за советы =)
имеется устройство, которое через USB передает данные на компьютер (другое устройство).
Я пишу под lazarus в Linux. Подскажите, плиз, как обеспечить работу устройства по приему данных?
Добавлено спустя 1 час 36 минут 48 секунд:
как его конфигурировать, так же как и с COM портом?
Я пишу под lazarus в Linux. Подскажите, плиз, как обеспечить работу устройства по приему данных?
Добавлено спустя 1 час 36 минут 48 секунд:
как его конфигурировать, так же как и с COM портом?
Код: Выделить всё
ser:=TBlockserial.Create; //создаем устройство
ser.RaiseExcept:=false; //не обрабатываем исключения ошибок связи
ser.Connect('/dev/ttyUSB0');
ser.Config(115200,8,'N',0,false,false);
ser.SendByte((data[1] shl 0)or(data[2] shl 8)or(data[3] shl 16)or(data[4] shl 24)); //принимаем данные от устройства
a:=ser.RecvByte(1000);
ser.Free;//освобождаем устройствоЛюди, кто-то же работал с USB, помогите, плиз
Причем тут документация на устройство???
у меня на тонкий клиент поступают данные на USB и мне необходимо их обработать
у меня на тонкий клиент поступают данные на USB и мне необходимо их обработать
- Sergei I. Gorelkin
- энтузиаст
- Сообщения: 1409
- Зарегистрирован: 24.07.2005 14:40:41
- Откуда: Зеленоград
В USB нет абстрактных устройств. Каждое устройство умеет выполнять только определенный набор команд. В частности, как COM-порт оно может работать только в том случае, если в нем реализован протокол CDC (communication device class).
Поэтому нужно узнавать, что за устройство, что оно умеет, и от этой печки плясать.
Поэтому нужно узнавать, что за устройство, что оно умеет, и от этой печки плясать.
Устройство умеет и может передавать данные через USB, а на компьютере все,что приходит от него я должен получить и обработать.
В устройстве есть схема, которая при специальных дровах, установленных на компе, делает Virtual COM Port. но работа идет через USB. в windows все работает. мне необходимо написать в лазарусе под линуксом обработку данных с USB
Выше же все объяснялось.
- втыкаешь устройство
- в терминале запускаешь dmesg (или dmesg | tail ) и ищешь в его выводе что-то типа ttyUSB
- если находишь, дальше см. посты выше.
- втыкаешь устройство
- в терминале запускаешь dmesg (или dmesg | tail ) и ищешь в его выводе что-то типа ttyUSB
- если находишь, дальше см. посты выше.
вот это правда работает,проверено...
сенкс, Mr.Smart
сенкс, Mr.Smart
