|
|
  |
STM32 USB FS OTG |
|
|
|
Mar 26 2017, 05:03
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(Genadi Zawidowski @ Mar 26 2017, 00:30)  как я понимаю, об обработке таких запросов мы сообщаем, отдавая бит что бы можем remote wakeup делать. Я не ставлю его. Не, remote wakeup это когда девайс будит спящий хост. А я про реакцию на отсутствие активности шины - через 3мс будет early suspend, через 10мс suspend. Когда "боролся" с Win XP, заглядывал в HAL, обратил внимание, что они много ненужных прерываний включают, а потом просто флаги дергают в обработчике. Я их не обрабатываю, и все работает нормально, но вдруг есть какой нюанс? В мануале на этот счет как-то тихо.
|
|
|
|
|
Mar 27 2017, 15:58
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(Genadi Zawidowski @ Mar 27 2017, 18:26)  Долго объяснять... Для проверки моей идеи поменяй product I'd например... Это уже пробовал, не прокатило. Помогла смена типа терминала на "Микрофон" - девайс появился, но запись не работает - причем, как изначально в Zero Bandwidth восьмерка сконфигурировала интерфейс, так никаких попыток что-то включить и не предпринимает. Придется наверное и на восьмерку сниффер ставить... На ХР все четко - включаешь запись интерфейс переключается в другую конфигурацию и все поехало, запись закончилась обратно в Zero Bandwidth. Цитата Про то что радиоприёмник с передатчиком ставятся в запрещённой состоянии помнишь? А это как?
Сообщение отредактировал Шаманъ - Mar 27 2017, 15:58
|
|
|
|
|
Mar 27 2017, 17:36
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(Genadi Zawidowski @ Mar 27 2017, 19:46)  Это вот так: А понятно, это я знаю, смутило слово "запрещенное состояние", везде просто написано "отключенное состояние". Но то фигня, непонятно что восьмерке не нравится. Сейчас сниффер скачаю, посмотрю. Заодно новый инструмент опробую, притом бесплатный. Поставил Microsoft Message Analyser - очень классная штука. Но проблем по части обмена с устройством нет - все в полном порядке. Но аудио интерфес после перевода в Zero Bandwidth так и остается в нем и никаких команд более на него не отправляется. Видимо что-то не нравится восьмерке в моих дескрипторах. Где-то помнится встречал упоминание, что она хочет чтобы девайс предоставлял какие-нибудь функции управления. Добавить Feature Unit что-ли...
|
|
|
|
|
Mar 27 2017, 19:37
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(Genadi Zawidowski @ Mar 27 2017, 22:10)  в десятке, семерке и XP работает Ну тогда и в восьмерке должно. Цитата А может это не-ZLP виновато? А причем здесь оно, если восьмерка даже не хочет активировать альтернативную конфигурацию AS интерфейса. Т.е. она фактически не хочет тупо включить "USB звуковуху". К тому же в изохронном обмене большого смысла в ZLP нет, разве что для начальной синхронизации. Цитата Поможет ли тебе для диагностики тестовая прошивка-радиоприемник всегда выдавал тон? Да я так понимаю, что можно загрузить ту, что у меня есть и посмотреть. Кстати, а как там JTAG сконфигурирован, а то мне чтобы ее вытереть пришлось BOOT0 переключать. Наверное в SWD переключен?
|
|
|
|
|
Mar 27 2017, 21:26
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Все нашел проблему. У меня была конфигурация 12000Гц частота дискретизации два 24битных канала, упакованных в 32битные слоты. Короче что-то в этом всем восьмерке не понравилось . Сейчас поставил 16бит 48кГц и все заработало. Возникает резонный вопрос - за что это ее так улучшили, что ХР понимал бОльше форматов?
Все, разобрался. Короче восьмерка поддерживает не все форматы, которые ХР поддерживает, это первое. Второе, она (в отличии от ХР) не обновляет конфигурацию устройств, т.е. если поменяли в дескрипторе частоту дискретизации или размер пакета, надо переустановить драйвер (собственно из-за этого все так и затянулось - я форматы сразу начал перебирать, но устройство не удалял).
Вот собственно и все. Свою проблему с не поддерживаемым форматом решил за счет перехода на 32битные сэмплы (теперь только не факт, что на ХР будет работать, завтра проверю).
Сообщение отредактировал Шаманъ - Mar 27 2017, 21:29
|
|
|
|
|
Mar 28 2017, 05:52
|
Знающий
   
Группа: Участник
Сообщений: 758
Регистрация: 27-08-08
Пользователь №: 39 839

|
Цитата(Genadi Zawidowski @ Mar 28 2017, 04:18)  Насчет переустановки (я очищаю от устройств через device manager, включив показ скрытых) - это как раз то что я предложил проверить изменив product id. Просто удаление устройства тоже работает (в смысле кликнуть правой кнопкой по подключенному устройству и выбрать "Удалить"). По части форматов восьмерке не понравилась упаковка 24битных отсчетов в 4байтные слоты, при этом она работает с 24битными отсчетами в 3байтных слотах и 32битными в 4х байтных, последнее это фактически то же самое, что и первое.
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|