powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Java и USB передача данных - Java SE
25 сообщений из 26, страница 1 из 2
Java и USB передача данных - Java SE
    #39470403
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нужно сделать приложение. Его суть такова: Есть микроконтроллер (TTL) - он подключается через USB к ПК. Микроконтроллер передаёт данные на пк - цифра.

Так вот. Как мне приложением на Java получать эти данные?

P.S. Подключение происходит не через COM порт - Взял библиотеку jsr80 и она не показывала что это устройство подключено через COM.

Подскажите пожалуйста как мне такое реализовать?
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39470407
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TsyklopНужно сделать приложение. Его суть такова: Есть микроконтроллер (TTL) - он подключается через USB к ПК. Микроконтроллер передаёт данные на пк - цифра.

Так вот. Как мне приложением на Java получать эти данные?

P.S. Подключение происходит не через COM порт - Взял библиотеку jsr80 и она не показывала что это устройство подключено через COM.

Подскажите пожалуйста как мне такое реализовать?

Если У Вас винда просто надо установить драйвер...и com порт появится.
linux находит большинство чипов. и виртуальный com порт появляется после включения в usb
Если не знаете какие чипы...есть три основные чипа...это надо три драйвера перебрать
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39470409
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tsyklop,
вы почему постите одни и те же темы?
Вам сказали про драйвер. Сказали про поиск. От вас никакой реакции.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39471185
Фотография BlackGnomeГуест
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TsyklopНужно сделать приложение. Его суть такова: Есть микроконтроллер (TTL) - он подключается через USB к ПК. Микроконтроллер передаёт данные на пк - цифра.

Так вот. Как мне приложением на Java получать эти данные?

P.S. Подключение происходит не через COM порт - Взял библиотеку jsr80 и она не показывала что это устройство подключено через COM.

Подскажите пожалуйста как мне такое реализовать?


http://usb4java.org/ ?
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472139
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123Tsyklop,
вы почему постите одни и те же темы?
Вам сказали про драйвер. Сказали про поиск. От вас никакой реакции.

Про какой драйвер? Это устройство самописное. Тут нет драйверов как таковых. Я пробовал прогу zadig, но толку ноль.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472143
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BlackGnomeГуест, Пробовал - не работает. не могу определить vendor, product, interface, endpiont моего устройства. Дампил все устройства, брал эти данные - устройство не найдено. Гуглил, смотрел примеры - не работает.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472145
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al, так как какой драйвер? я просто без понятия... я Пробовал zadig, но бзрезультатно.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472358
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al, Драйвер ch340. У меня на Win 10 он ставится сам. но всё равно программа не подключается.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472368
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tsyklop,
Поиск по ветке делали?
Любой рабочий кусок кода?
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472414
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Petro123,

Вот код: http://rxtx.qbang.org/wiki/index.php/Two_way_communcation_with_the_serial_port

скорость 9600.

В ответ ноль.
Заметил что слушатель вызывается когда я отключаю устройство. а так он не работает.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472579
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tsyklopirbis_al, Драйвер ch340. У меня на Win 10 он ставится сам. но всё равно программа не подключается.

Сначала Вы должны увидеть com порт в диспетчере устройств.(После того как usb воткнули)
Как только это произошло дальше ищем java с com портом.(я предпочитаю rxtx либу...)
Если Вы найдёте линукс и воткнёте туда usb...командой lsusb -v можно увидеть чип устройства...и так вы будите знать что искать.
Возможно в винде есть какая-то аналогия этой команды.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472585
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
irbis_alTsyklopirbis_al, Драйвер ch340. У меня на Win 10 он ставится сам. но всё равно программа не подключается.

Сначала Вы должны увидеть com порт в диспетчере устройств.(После того как usb воткнули)
Как только это произошло дальше ищем java с com портом.(я предпочитаю rxtx либу...)
Если Вы найдёте линукс и воткнёте туда usb...командой lsusb -v можно увидеть чип устройства...и так вы будите знать что искать.
Возможно в винде есть какая-то аналогия этой команды.

В догонку Вы написали что Драйвер ch340. У меня на Win 10 он ставится сам...Но Вы com порт видите?
Если видите...всё пучком...см номер порта...открывайте го либой rxtx...А дальше читайте протокол обмена с вашим устройством.(Типа послав ENQ(0x03) он должен ответить NAK(0X15)
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472595
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al,
В том и прикол что я использую RXTX и полный ноль. мне ничего не приходит. На самом устройстве сделали такую штуку- приделали кнопку, при её нажатии устройство отправляет данные - цифру. Но этого не происходит.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472598
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al,

Да, я вижу COM порт. Я правильно понимаю что если порт находится в разделе COM/LTP то это COM?
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472619
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tsyklopirbis_al,

Да, я вижу COM порт. Я правильно понимаю что если порт находится в разделе COM/LTP то это COM?

Так это уже отлично...раз видите ком порт.(надеюсь это не компорт материнки,при высовывании usb
порт должен исчезнуть)
Вы смотрели спецификакцию rxtx...в винде там нативную либу rxSerial.dll надо в папку bin java положить.
(Почему в bin на винде не знаю в линуксах в lib кладётся ).
Дальше по примерам их много в инете...
Порт надо надо открыть
и тут Вы должны знать скорость обмена с Вашим устройством(9600,115200 и т.д)
Присоединил scaner.java(пртотип работы со сканером штрихкода)
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472625
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al,

Давай опишу всё поподробнее.

Я удалил данные моего устройства полностью. Я подключил его. В диспетчере устройств он находится в вкладке "Устройство USB" и называется "USB2.0-Serial".

Я так понимаю это не COM.

Я скачал драйвер ch340. Поставил для этого устройства. Теперь оно во вкладке COM/LPT.

Не знаю всё ли делаю правильно.

Если я не буду ставить драйвер, устройство будет определятся как COM всё равно.

Вот мой Файл реализации.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472630
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tsyklop,

Я скачал драйвер ch340. Поставил для этого устройства. Теперь оно во вкладке COM/LPT.

Не знаю всё ли делаю правильно.

Да правильно...И теперь работайте как с com портом...читайте батики..(посылайте байтики)

Если я не буду ставить драйвер, устройство будет определятся как COM всё равно.

Нет не будет...драйвер и создаёт виртуальный компорт.
Драйвер ставить обязательно.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472632
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al, Хорошо, поставил. но ничего не получается. мне ничего не приходит.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472633
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а в коде просто куча лишнего начните с простого
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
 try {
//В диспетчере какой видите
String port='COM3';
              portId = CommPortIdentifier.getPortIdentifier(port);
        } catch (NoSuchPortException nspe) {
            logger.log(Level.OFF,"Непроинициализировался порт "+port,nspe);
            nspe.printStackTrace();
        }
        
        try {
                                System.out.println("Opening port: "+portId.getName());
                                serialPort = (SerialPort) portId.open("App", 3000);
                        } catch (PortInUseException e) {
                                e.printStackTrace();
                            logger.log(Level.OFF,"Не удалось открыть порт(возможно занят другим Pio) "+port,e);
                                System.exit(1);
                        }


        try {
           /* serialPort.setRTS(false);
            serialPort.setFlowControlMode(SerialPort.FLOWCONTROL_RTSCTS_IN
                                         | SerialPort.FLOWCONTROL_RTSCTS_OUT);*/
        
                serialPort.setSerialPortParams(rule.getBod(), SerialPort.DATABITS_8,
                                SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);
            
        } catch (UnsupportedCommOperationException e) {
                e.printStackTrace();
            logger.log(Level.WARNING," Проблема назначения параметров порту ",e);
               // this.saveError(e);
        }
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472637
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al, а что такое Rule?
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472638
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
irbis_al,

там есть
Код: java
1.
rule.getBod() 


У меня в коде замените на
Код: java
1.
2.
3.
int bod=9600;//А вот тут надо знать скорость обмена очень важный параметр...обычно 9600.
 serialPort.setSerialPortParams(bod, SerialPort.DATABITS_8,
                                SerialPort.STOPBITS_1, SerialPort.PARITY_NONE);
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472641
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
irbis_al,

У Вас хотя бы порт должен открыться без исключений...это будет означать что канал "поднят".
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472681
Фотография BlackGnomeГуест
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TsyklopBlackGnomeГуест, Пробовал - не работает. не могу определить vendor, product, interface, endpiont моего устройства. Дампил все устройства, брал эти данные - устройство не найдено. Гуглил, смотрел примеры - не работает.


если нельзя определить vendor, product, interface, endpiont , то ИМХО, дальше пока двигаться не надо

налдо разбираться ТУТ
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472687
Tsyklop
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
irbis_al, Всё разобрался. была штука в устройстве. использую либу rxtx. Подскажи как мне получать нормальные данные? отправляются они мне в формате rs232.
...
Рейтинг: 0 / 0
Java и USB передача данных - Java SE
    #39472689
irbis_al
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tsyklopirbis_al, Всё разобрался. была штука в устройстве. использую либу rxtx. Подскажи как мне получать нормальные данные? отправляются они мне в формате rs232.

Ну так же по коду
Код: java
1.
2.
3.
4.
5.
6.
7.
                        try {
                                serialPort.addEventListener(this);
                                serialPort.notifyOnDataAvailable(true);
                        } catch (Exception e) {
                                e.printStackTrace();
                             //   this.saveError(e);
                        }




И вот тут увидите данные
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
 public void serialEvent(SerialPortEvent event) {

    //    System.out.println("EventCom "+event.getEventType()+" "+SerialPortEvent.DATA_AVAILABLE);
                    switch (event.getEventType()) {
                    case SerialPortEvent.BI:
                    case SerialPortEvent.OE:
                    case SerialPortEvent.FE:
                    case SerialPortEvent.PE:
                    case SerialPortEvent.CD:
                    case SerialPortEvent.CTS:
                    case SerialPortEvent.DSR:
                    case SerialPortEvent.RI:
                    case SerialPortEvent.OUTPUT_BUFFER_EMPTY:   System.out.println("Buffer_empty");
                            break;
                        case SerialPortEvent.DATA_AVAILABLE:  
                        
                      
                        int numBytes =0;
                        String result="";
                      byte[] readBuffer = new byte[128];
                                 try {
                                     while (inputStream.available() > 0) {
                                          numBytes = inputStream.read(readBuffer);
//В строку можно не переводить...просто у меня штрихкод и по логике я его уже получил...но вы можете //байтики дальше обрабатывать.
                                         String s=new String(readBuffer,0,numBytes);
                                       
                                         result=result+s;
                                     }
                                //     System.out.println(result+"resize="+result.length());
                                  
                              //      System.out.println(global+"size="+global.length());  
                                 } catch (IOException e) {}
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Java и USB передача данных - Java SE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]