Linux vs rs485-USB

FORUM_NAME: USB-RS485
Модератор: Модераторы
Phoenix M
Аватара
Phoenix M
Возраст: 36
Репутация: 41
Сообщения: 371
Зарегистрирован: 21.09.2012
С нами: 5 лет 9 месяцев
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #141 Phoenix » 19.09.2017, 21:14

А, вы используете драйвер от Exar. Я думал что изначально был cdc_acm, а потом все поломалось из-за подгрузки другого драйвера. Не вижу смысла использовать этот драйвер, если все работает с cdc_acm.

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #142 delovoy » 20.09.2017, 11:55

Phoenix писал(а):А, вы используете драйвер от Exar. Я думал что изначально был cdc_acm, а потом все поломалось из-за подгрузки другого драйвера. Не вижу смысла использовать этот драйвер, если все работает с cdc_acm.

cdc_acm уже работает как положено?

У меня exar поделка.

Phoenix M
Аватара
Phoenix M
Возраст: 36
Репутация: 41
Сообщения: 371
Зарегистрирован: 21.09.2012
С нами: 5 лет 9 месяцев
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #143 Phoenix » 20.09.2017, 12:06

Работает после изменения регистров в микросхеме exar. Вы уже забыли что так можно? )

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #144 delovoy » 24.09.2017, 10:13

Phoenix писал(а):Работает после изменения регистров в микросхеме exar. Вы уже забыли что так можно? )

Я помню, просто по старинке решил скомпилить драйвер. Радует, что есть несколько способов решения данной проблемы. У меня все работает пока, ничего не изменилось

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #145 delovoy » 29.09.2017, 20:46

Phoenix писал(а):Работает после изменения регистров в микросхеме exar. Вы уже забыли что так можно? )

И да, данный способ работал только под виндой.

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #146 delovoy » 09.11.2017, 19:23

Phoenix писал(а):[b]...

Попробовал вариант с Udev и что то не контачит.
В логах от udev написано:

failed to execute '/sbin/corExar' '/sbin/corExar 3 12': Exec format error
Nov 9 19:17:20 home systemd-udevd[2794]: Process '/sbin/corExar 3 12' failed with exit code 2.

И как назло измененный модуль от exar не работает, ядро ругается, что старая версия mod_unmod (3,8) а должна быть 3,10.

Сижу вот на обьекте, на гофре и что то приуныл. Сдача объекта значит переноситься )))) Надеялся, что завтра сдам.

Phoenix M
Аватара
Phoenix M
Возраст: 36
Репутация: 41
Сообщения: 371
Зарегистрирован: 21.09.2012
С нами: 5 лет 9 месяцев
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #147 Phoenix » 10.11.2017, 10:23

Попробуйте просто запустить исполняемый файл corExar, должны увидеть краткую справку. Такое ощущение, что этот файл поврежден или собран под другую платформу.

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #148 delovoy » 10.11.2017, 20:05

Или потому что в /dev/ отсутствует устройство. Посмотрю сегодня, что с этим можно сделать

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #149 delovoy » 11.11.2017, 23:32

Как оно вообще определяется ? ttyACM0?

Phoenix M
Аватара
Phoenix M
Возраст: 36
Репутация: 41
Сообщения: 371
Зарегистрирован: 21.09.2012
С нами: 5 лет 9 месяцев
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #150 Phoenix » 12.11.2017, 09:05

Да. Но программа corExar работает не с этим файлом-устройством, а с usb у которого idVendor=="04e2".

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #151 delovoy » 19.05.2018, 07:32

В очередной раз обновил систему (удалил старую и поставил новую версию) Хотел собрать драйвер, но каждый раз возникают проблемы. В этот раз в компиляторе по умолчанию включен PIC режим. При сборке сорцов ошибка о не поддерживании PIC режима в исходниках.

Полагаю, что хватит с меня плясок. Запишу в ПЗУ новые регистры

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #152 delovoy » 25.05.2018, 22:33

сегодня попробовал записать регистры во временную память, по второму способу.

При компиляции утилитой make сыпет ошибки, способы их решения (чтобы не гуглить лишний раз)

Ошибка 1:

Код: Выделить всё

main.cpp:15:10: fatal error: libusb-1.0/libusb.h: Нет такого файла или каталога
 #include <libusb-1.0/libusb.h>


Решение:

Код: Выделить всё

sudo apt-get install libusb-1.0


Ошибка 2

Код: Выделить всё

g++: error: /lib/libusb-1.0.so.0: Нет такого файла или каталога


Решение:

Код: Выделить всё

ldconfig -p | grep libusb
   libusbmuxd.so.4 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libusbmuxd.so.4
   libusb-1.0.so.0 (libc6,x86-64) => /lib/x86_64-linux-gnu/libusb-1.0.so.0
   libusb-1.0.so.0 (libc6) => /lib/i386-linux-gnu/libusb-1.0.so.0
   libusb-0.1.so.4 (libc6,x86-64) => /lib/x86_64-linux-gnu/libusb-0.1.so.4

В Makefile меняем путь на соответствующий


После реализации второго способа, а именно, компиляции, перемещение исполняющего файла в каталог /sbin/ и добавления правила udev - при подключении usb преобразователя в логах наблюдаю следующую ошибку (пока не гуглил решение оной)

Код: Выделить всё

May 25 23:30:39 Home kernel: [  686.280910] usb 3-1: device descriptor read/64, error -62
May 25 23:30:41 Home kernel: [  687.908897] usb 3-1: device not accepting address 6, error -62

Phoenix M
Аватара
Phoenix M
Возраст: 36
Репутация: 41
Сообщения: 371
Зарегистрирован: 21.09.2012
С нами: 5 лет 9 месяцев
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #153 Phoenix » 26.05.2018, 09:40

Попробуйте вручную запустить программу. Посмотрите какие Bus/Device у преобразователя:

Код: Выделить всё

$ lsusb
...
Bus 003 Device 003: ID 04e2:1411 Exar Corp.
...

Далее

Код: Выделить всё

# ./corExar 3 3
Found exar.
Correction.

delovoy
Автор темы
delovoy
Автор темы
Репутация: 1
Сообщения: 66
Зарегистрирован: 28.11.2015
С нами: 2 года 6 месяцев
Профессия: IT

Непрочитанное сообщение #154 delovoy » 26.05.2018, 10:34

Phoenix писал(а):Попробуйте вручную запустить программу. Посмотрите какие Bus/Device у преобразователя:

:pri_vet:-: отработала, съезжу на объект позже и проверю. Если заработает, то нужно будет записывать в ПЗУ

Добавлено спустя 8 часов 46 минут:
Проверил, не работает. Кто нибудь проверял на rs485? Какой драйвер по умолчанию установлен? Какая система использовалась?

Добавлено спустя 9 часов 59 минут:
Кстати, индикация преобразователя и скорость поиска приборов напоминает о том, если бы запустить поиск приборов с регистрами по умолчанию

Phoenix M
Аватара
Phoenix M
Возраст: 36
Репутация: 41
Сообщения: 371
Зарегистрирован: 21.09.2012
С нами: 5 лет 9 месяцев
Профессия: Проектировщик
Откуда: Пятигорск

Непрочитанное сообщение #155 Phoenix » 01.06.2018, 20:34

Проверил второй метод (запись регистров не в постоянную память) на USB-RS485 - работает. Calculate Linux, kernel 4.14.39.


  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «USB-RS485»

Кто сейчас на форуме (по активности за 5 минут)

Сейчас этот раздел просматривают: 1 гость

forum-bolid.ru : Отказ от ответственности