Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: EZ-USB FX2 в Linux
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > RS232/LPT/USB/PCMCIA/FireWire
IVTIVT
Добрый все день! Имеется usb-устройство с cайпрессовским СY7C68013 . Поначалу работа с ним велась в Windows через драйвер cyusb.sys - всё работало, данные посредством FIFO передавались верные (устройство принимает данные и передает по usb в pc ). Затем встал вопрос об аналогичной работе в Линуксе. Была использована библиотека libusb.

Что происходит в данный момент : если после включения устройства ,подключенного к компьютеру с Виндоус - перезагрузить компьютер и войти в Линукс - всё работает, данные принимаются в Линуксе правильные. Но стоит только сбросить питание устройства (вне зависимости от того, подключено ли оно шнуром к компьютеру) - как при включении питания обратно - данные принимаются абсолютно левые. Под данными я подразумеваю набор байт. То есть возникло подозрение, что драйвер cyusb.sys вносит какие-то инициализационные изменения , так как если включить Виндоус - все работает - перейти в Линукс - все работает - выключить КОМПЬЮТЕР - включить компьютер - все по-прежнему работает. Перестает работать только в том случае, если сбросить питание УСТРОЙСТВА (если сбросить и включить обратно питание устройства, находясь при этом в Виндоус - всё работает).

Исходя из этого у меня вопрос - передает ли драйвер cyusb.sys какие-либо параметры в устройство ? (подчеркну еще раз, что сама передача данных идет исправно, просто сами байты становятся "левыми" - причем всегда одинаковыми, вне зависимости от тех данных, которые устройство должно передать). Такое впечатление, что где-то в какой-то регистр fx2 при сбросе питания вводится значение по умолчанию, при к-ом сами данные могут портиться. Какой (и так ли это) - выяснить не удалось.

TRM читал. Надеюсь на помощь
loginser
Добрый. Наврятли драйвер что то куда то пишет, ищите разницу в апликациях под win и linux. Возможно в само устройство что то записывается(режим работы, регистры...), соответсвенно под окнами вы записываете а под линуксом нет, пока устройтво не перезагружено оно работает корректно. Удачи.
Sujan
А у вас точно драйвер не грузит прошивку в Cypress? Насколько помню у них основная фича была в том что он при старте из РОМ читает VID и PID, как драйвер видет эти VID и PID - заливает туда прошивку с другими VID и PID и делает ренумерацию => типо подключено новое устройство с уже залитой прошивкой.
Симптомы очень похожи.
IVTIVT
Цитата(Sujan @ Oct 22 2012, 00:54) *
А у вас точно драйвер не грузит прошивку в Cypress? Насколько помню у них основная фича была в том что он при старте из РОМ читает VID и PID, как драйвер видет эти VID и PID - заливает туда прошивку с другими VID и PID и делает ренумерацию => типо подключено новое устройство с уже залитой прошивкой.
Симптомы очень похожи.

Прошивка устройства находится в самом устройстве и загружается по включению питания. А вот передает ли драйвер какой-то вариант прошивки свой - это уже неясно, исходный код драйвера закрыт. Особенностей приложений под Win и под linux нет, везде стандартные команды usb.

p.s. проект работы с линуксом был отложен, теперь вот вернулся к нему, проблема та же - потому и не писал долго
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.