Страница 28 из 33 Первая ... 182627282930 ... Последняя
Показано с 541 по 560 из 651

Тема: Дешевый USB transport (для саморазвития)?

  1. #1 Показать/скрыть первое сообщение.
    Старый знакомый
    Автор темы
    Аватар для antonluba
    Регистрация
    12.12.2014
    Адрес
    Сочи, Коломна
    Возраст
    45
    Сообщений
    766

    По умолчанию Дешевый USB transport (для саморазвития)?

    Идея такая: берется STM32F4xx. У него есть USB и I2S. Проц и USB тактируется от HSE - кварц на необходимое кол-во МГц+PLL. Через USB в асинхронном режиме выводится аудио поток.
    Для I2S вариантов тактирования два: от PLL с соответствующим снижением качества или от ЦАПа на специальный вход модуля I2S.
    Модуль I2S поддерживает форматы Philips, RJ, LJ, PCM, 16 или 32 бит до 96 192 кГц. (Вы это всё знаете, конечно).
    Теоретически, можно получить универсальный вывод (ввод тоже) I2S через USB (для многих, думаю, достаточного уровня).

    Лично у меня сложности следующие:
    1. Исходники асинхронного вывода (и ввода) по USB.
    2. Получение от хоста параметров потока и переключение частот.
    3. Аппаратная реализация работы двух генераторов на один вход.
    4. Внутренняя синхронизация между I2S и USB.
    Ну и еще мелочей всяких.

    Набросайте ссылок по теме, пожалуйста.

    P.S. Audio Widget я конечно, скачал, но, честно говоря, разобраться пока не смог.
    Последний раз редактировалось antonluba; 25.10.2015 в 21:47.

  2. #541
    Завсегдатай Аватар для uriy
    Регистрация
    19.10.2008
    Адрес
    Город плохих снов
    Сообщений
    2,246

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от antonluba Посмотреть сообщение
    Есть статистика по потерям пакетов?
    Я на этом камне обкатывал проект USB-I2S от чип и дипа, МК был в мастере и тактировался от клока ЦАПа, разсинхронизация частоты юсб и частоты мк приводила к потере пакетов и явно слышимых щелчков на выходе цапа. МК не мог разсинхронизорватся по I2S по двум причинам, мк тактировался от одного с цапом клока, и в цапе стоит асинхронный приёмник I2S потока. Щелчки были то раз в минуту, то раз в двадцать секунд. Очень редко их не было более двух минут.

  3. #542
    самый главный Аватар для Игорь Гапонов
    Регистрация
    03.03.2010
    Адрес
    Одесса
    Возраст
    12
    Сообщений
    3,156

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от antonluba Посмотреть сообщение

    В профессиональных девайсах, возможно, используют bulk режим и контролируют передачу, но под это надо драйверы писать особые, чего мы стараемся избежать.
    Согласно стандарту юэсби-аудио в двух версиях нет верификации принимаемых/переданных данных. И ничего, именно профф. DAW-студии живы до сих пор . В слейве (ведущий ген - мастер ЦАПа) в нормальных реализациях всё великолепно работает без щелчков. Потери пакетов наиболее вероятны при смене сеток Fs. Но это уже нонсенс, чтобы в треке скачком менялась Fs. Обычно секундной паузы-mute между треками хватает, чтобы произошёл асинхронный битперфектный захват данных. Если у чипа с дипом проблемы с этим, то пусть сочиняют нормальную прошивку или откровенно признают, что применённый ими контроллер гамно (даже у юэсби гарнитур за рубль практически не наблюдаются потери пакетов).
    Последний раз редактировалось Игорь Гапонов; 27.01.2021 в 18:30.
    Электричество дисциплинирует

  4. #543
    Старый знакомый
    Автор темы
    Аватар для antonluba
    Регистрация
    12.12.2014
    Адрес
    Сочи, Коломна
    Возраст
    45
    Сообщений
    766

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от uriy Посмотреть сообщение
    Я на этом камне обкатывал проект USB-I2S от чип и дипа, МК был в мастере и тактировался от клока ЦАПа, разсинхронизация частоты юсб и частоты мк приводила к потере пакетов и явно слышимых щелчков на выходе цапа. МК не мог разсинхронизорватся по I2S по двум причинам, мк тактировался от одного с цапом клока, и в цапе стоит асинхронный приёмник I2S потока. Щелчки были то раз в минуту, то раз в двадцать секунд. Очень редко их не было более двух минут.
    Полагаю, причина в другом.
    Не знаю, как там у чид, но в этой теме есть проект от romanetz, в котором реализована асинхронная изохронная передача с тактированием от цапа.
    Немного недопилена, но свои задачи выполняет на 100%.
    Я на основе этого кода сделал цап.
    Ни одного щелчка не было.

    Вот здесь фоточки:

    https://www.instagram.com/p/BvWzms2H...on_share_sheet
    https://www.instagram.com/p/BvZrE6DH..._web_copy_link
    https://www.instagram.com/p/BvcMYj-H..._web_copy_link

  5. #544
    Завсегдатай Аватар для uriy
    Регистрация
    19.10.2008
    Адрес
    Город плохих снов
    Сообщений
    2,246

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от antonluba Посмотреть сообщение
    в котором реализована асинхронная изохронная передача с тактированием от цапа.
    На каком МК? На STM32F407?

  6. #545
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,139

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от uriy Посмотреть сообщение
    Я на этом камне обкатывал проект USB-I2S от чип и дипа, МК был в мастере и тактировался от клока ЦАПа, разсинхронизация частоты юсб и частоты мк приводила к потере пакетов и явно слышимых щелчков на выходе цапа.
    Так там небось синхронизация была не асинхронная а синхронная или адаптивная. Делать без внешнего тактирования I2S или SAI - совершено бессмысленно.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  7. #546
    Завсегдатай Аватар для uriy
    Регистрация
    19.10.2008
    Адрес
    Город плохих снов
    Сообщений
    2,246

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от Alex Посмотреть сообщение
    Так там небось синхронизация была не асинхронная а синхронная или адаптивная.
    Именно так.

  8. #547
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,139

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от uriy Посмотреть сообщение
    Вот только внешнее тактирование I2S не спасёт от потери пакетов между мк и компом...
    Оно его усугубляет, если делать не так как надо - см. выше, но помочь в этом никак не может, да и совсем не для этого оно нужно.

    Вобще-то, изохронная передача не является передачей с гаранитированным отсутствием ошибок передачи данных (кк балк и другие), она гарантирует (с оговорками) только своевременное поступление данных (т.е точность во времени, в отличе от того же балка).
    Реально, при качественном железе (включая кабель!), число ошибок данны что я видел, не превышало единиц, макимум десятков, за сутки наблюдения.
    (Использовалось цифровое кольцо, loop, с проверкой посланного и вернутого обратно).
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  9. #548
    Завсегдатай Аватар для uriy
    Регистрация
    19.10.2008
    Адрес
    Город плохих снов
    Сообщений
    2,246

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от Alex Посмотреть сообщение
    Оно его усугубляет, если делать не так как надо - см. выше, но помочь в этом никак не может, да и совсем не для этого оно нужно.
    Я предположил что речь идёт за прогу от чип и дип под 407 камень, они там применили простую синхронную передачу данных по юсб что приводило к потери инфы. Перевести их проект на асинхронную передачу данных по юсб я не смог т.к. дупля не отбиваю как это сделать, я просто взял более мощную модель МК и другой проект от чип и дип с асинхронной передачей данных и щелчки пропали.

  10. #549
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,139

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от uriy Посмотреть сообщение
    Перевести их проект на асинхронную передачу данных по юсб я не смог т.к. дупля не отбиваю как это сделать,
    Фидбек вводить.


    Цитата Сообщение от uriy Посмотреть сообщение
    я просто взял более мощную модель МК и другой проект от чип и дип с асинхронной передачей данных

    Какой МК? Передача асинхронная но все еще в UAC1?
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  11. #550
    Старый знакомый
    Автор темы
    Аватар для antonluba
    Регистрация
    12.12.2014
    Адрес
    Сочи, Коломна
    Возраст
    45
    Сообщений
    766

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от uriy Посмотреть сообщение
    На каком МК? На STM32F407?
    да

  12. #551
    Завсегдатай Аватар для uriy
    Регистрация
    19.10.2008
    Адрес
    Город плохих снов
    Сообщений
    2,246

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от Alex Посмотреть сообщение
    Фидбек вводить.
    Я имея два исходника от чип и дипа с синхронной и асинхронной передачей и не смог понять как они настраивают юсб на асинхронную передачу, а вы тут обратную связь вводить.

    Цитата Сообщение от Alex Посмотреть сообщение
    Какой МК?
    F446RCT.
    Цитата Сообщение от Alex Посмотреть сообщение
    Передача асинхронная но все еще в UAC1?
    Вроде да. Я взял их исходник с проекта супер прайм и адаптировал под свои нужды.
    https://www.chipdip.ru/product0/9000569733

    Цитата Сообщение от antonluba Посмотреть сообщение
    да
    Жаль я упустил этот момент когда мучился с 407 камнем.

  13. #552
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,139

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от uriy Посмотреть сообщение
    Я имея два исходника от чип и дипа с синхронной и асинхронной передачей и не смог понять как они настраивают юсб на асинхронную передачу, а вы тут обратную связь вводить.
    Асинхронная это и есть "с фидбеком" (который еще 2-х типов бывает).
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  14. #553
    Завсегдатай Аватар для uriy
    Регистрация
    19.10.2008
    Адрес
    Город плохих снов
    Сообщений
    2,246

    По умолчанию Re: Дешевый USB transport (для саморазвития)?


    Offтопик:
    Цитата Сообщение от Alex Посмотреть сообщение
    Асинхронная это и есть "с фидбеком"
    Да эт я понял.
    Я к тому что имея исхдники на руках я не понял как это реализовать, т.е. ваша подсказка для меня это вообще не о чём.

  15. #554
    Старый знакомый
    Автор темы
    Аватар для antonluba
    Регистрация
    12.12.2014
    Адрес
    Сочи, Коломна
    Возраст
    45
    Сообщений
    766

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    В общем для следующего этапа экспериментов я себе заказал платки с STM32H743. И заодно, модули USB3300.

    Скрытый текст


    У него 4 модуля SAI, правда, с внешним тактированием SAI, Cube32MX допустил только 7 каналов выводить, но я пока не понял, как там переназначение выводов делать, может и 8 каналов удастся вывести.

    Как первый этап, я для себя обозначил целью 4 канала с частотой 48кГц на USB2 FS.

  16. #555
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,139

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от antonluba Посмотреть сообщение
    я себе заказал платки с STM32H743. И заодно, модули USB3300.
    А F723 небыло? Можно бы было без 3300 обойтись.

    ---------- Сообщение добавлено 19:07 ---------- Предыдущее сообщение было 19:05 ----------

    Цитата Сообщение от antonluba Посмотреть сообщение
    я для себя обозначил целью 4 канала с частотой 48кГц на USB2 FS.
    4х48/16?

    Если FS, зачем 3300?
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  17. #556
    Старый знакомый
    Автор темы
    Аватар для antonluba
    Регистрация
    12.12.2014
    Адрес
    Сочи, Коломна
    Возраст
    45
    Сообщений
    766

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от Alex Посмотреть сообщение
    А F723 небыло? Можно бы было без 3300 обойтись.

    ---------- Сообщение добавлено 19:07 ---------- Предыдущее сообщение было 19:05 ----------



    4х48/16?

    Если FS, зачем 3300?
    723 не было.
    4х48/24. Не успеет? 2х96/24 успевает же. Вроде бы.

    3300 это на дальнейшее развитие.

  18. #557
    Частый гость Аватар для romanetz
    Регистрация
    28.03.2015
    Сообщений
    153

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Применительно к STM32 и HS там есть один факап премерзкий
    Номер в SOF меняется 1 раз в 8 микрофреймов, а изохрон передаётся - каждые (1,2,4...)
    3300 ещё и затем, что ulpi можно дебажить недорогим ЛА - есть в этом смысл )
    F723 на хайспиде работает
    http://www.cqham.ru/forum/showthread...%EC%E8!/page64 там есть )

    ---------- Сообщение добавлено 08:48 ---------- Предыдущее сообщение было 08:43 ----------

    Цитата Сообщение от antonluba Посмотреть сообщение
    723 не было.
    4х48/24. Не успеет? 2х96/24 успевает же. Вроде бы.
    3300 это на дальнейшее развитие.
    48*4*3=576
    Я на 8 каналов вывод делал как-то, но 16 бит
    А чего б ему не успеть-то? В разрешённые 1023 байт/мсек помещается по передачам - ну и всё

    По STM32 табличку кидал из аппноты на предыдущих страницах, какие камень имеет набортный хайспид

  19. #558
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,139

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    Цитата Сообщение от antonluba Посмотреть сообщение
    4х48/24. Не успеет? 2х96/24 успевает же. Вроде бы.
    А, ну да. Я чего-то про 8 каналов подумал.

    Цитата Сообщение от romanetz Посмотреть сообщение
    3300 ещё и затем, что ulpi можно дебажить недорогим ЛА - есть в этом смысл )
    "Недорогой", до 25мгц работает, а там 60.
    Цитата Сообщение от romanetz Посмотреть сообщение
    А чего б ему не успеть-то?
    Успеет, успеет, то я ошибся.



    Цитата Сообщение от romanetz Посмотреть сообщение
    По STM32 табличку кидал из аппноты на предыдущих страницах, какие камень имеет набортный хайспид
    Насколько я помню, только 723-й, и 730-й.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  20. #559
    Старый знакомый
    Автор темы
    Аватар для antonluba
    Регистрация
    12.12.2014
    Адрес
    Сочи, Коломна
    Возраст
    45
    Сообщений
    766

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    По-моему, только STM32H7x3 точно, STM32F7x3
    Последний раз редактировалось antonluba; 31.01.2021 в 19:38.

  21. #560
    Старый знакомый Аватар для SergVKS
    Регистрация
    26.03.2005
    Адрес
    Воронеж
    Сообщений
    924

    По умолчанию Re: Дешевый USB transport (для саморазвития)?

    У H7 hs usb только через внешний phy

Страница 28 из 33 Первая ... 182627282930 ... Последняя

Метки этой темы

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •