Shtirlich 0 5 октября, 2011 Опубликовано 5 октября, 2011 · Жалоба есть задача ввести звук в писишник по USB. тоесть устройство - USB девайс, собирает данные, допустим, по I2S и шлет их через USB носту. посмотрел реализации соответствующих классов у техасского инструмента для стеларисов и у ST для stm32. вообще не увидел возможности с использованием стандартных библиотек направить звук в ПК, везде только вывод. посему вопрос: может кто уже пользует такое решение? пишу здесь потому что нужен мощный универсальный камень с богатой переферией. в идеале камень должен помимо звука потянуть виртуальный ком через композит, может быть несильную графику и много небыстрой периферии. создавать сий баобаб на чемто слабее ARM7 считаю формой анонизма. производитель не сильно важен как и стоимость самой микросхемы. или может существует волшебная билиотека/фреймворк/SDK/операционка, которая при прикручивании к любому камню реализует описаный функционал? p.s. сам бы написал с все нуля не будь я таким тупым лентяем = ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ig_z 0 5 октября, 2011 Опубликовано 5 октября, 2011 · Жалоба вообще не увидел возможности с использованием стандартных библиотек направить звук в ПК, везде только вывод. p.s. сам бы написал с все нуля не будь я таким тупым лентяем = ) Посмотрите на LPC23. Примеры от иара и кейла содержат ввод и вывод. Там необходимо найти примеры для плат с аудио частью. Там используется встроенный цап и ацп. Писание с нуля это не сто процентный признак трудолюбия. Кошерно начинать с выпиливания кремния на кухне при помощи пилки для ногтей :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shtirlich 0 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба не нашел, можно ткнуть носом плиз Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Буян 0 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба не нашел, можно ткнуть носом плиз Пример на AVR32 Пример на 8-битном AVR Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ig_z 0 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба не нашел, можно ткнуть носом плиз \IAR Systems\Embedded Workbench 6.0\arm\examples\NXP\LPC23xx\IAR-LPC-2378-SK\AudioDevice\ \Keil\ARM\Boards\Keil\MCB2300\USBAudio\ Еще у nxp есть такой пример i2s.usb.audio.demo.zip Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lebiga 0 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба \IAR Systems\Embedded Workbench 6.0\arm\examples\NXP\LPC23xx\IAR-LPC-2378-SK\AudioDevice\ \Keil\ARM\Boards\Keil\MCB2300\USBAudio\ Еще у nxp есть такой пример i2s.usb.audio.demo.zip Делал на основании этого проекта. Ставил кодек PCM3002 (20 бит 2 канала, TI), внешний генератор 12.288Мгц - подавал на ШИМ и делил частоту для кодека - изменялась частота дискретизации. Для прецезионных измерений нужно убрать адаптивный режим в USB аудио. Ввод проблем не имеет, вывод нужно буфферизировать - иногда заканчивались данные с компа - и были паузы в генерируемом сигнале. Режимы коррекции скорости вывода в ЮСБ (драйвер) - не работают до сих пор - глюки винды, нужно было вводить обратную связь через HID интерфейс - но я обошелся большим буффером. процы - LPC2148 (кодек на SSP) и LPC 23x/17x (кодек на I2S) Успехов Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ig_z 0 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба Для прецезионных измерений нужно убрать адаптивный режим в USB аудио. Ввод проблем не имеет, вывод нужно буфферизировать - иногда заканчивались данные с компа - и были паузы в генерируемом сигнале. Режимы коррекции скорости вывода в ЮСБ (драйвер) - не работают до сих пор - глюки винды, нужно было вводить обратную связь через HID интерфейс - но я обошелся большим буффером. Я не совсем понял, объясните плиз. Адаптивную синхронизацию вы не используете, значит остается асинхронный или синхронный режимы. Асинхронный режим глючит на виндах ниже висты. Остается синхронный режим, но большим буфером проблему не решить. Если девайс работает быстрее хоста, то сразу же имеем недостаток данных. Если девайс работает медленнее хоста, то буфер поможет, но все равно переполнение неизбежно. Единственный выход - синхронизация с соф. Или у вас как то по иному сделано? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lebiga 0 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба Я не совсем понял, объясните плиз. Адаптивную синхронизацию вы не используете, значит остается асинхронный или синхронный режимы. Асинхронный режим глючит на виндах ниже висты. Остается синхронный режим, но большим буфером проблему не решить. Если девайс работает быстрее хоста, то сразу же имеем недостаток данных. Если девайс работает медленнее хоста, то буфер поможет, но все равно переполнение неизбежно. Единственный выход - синхронизация с соф. Или у вас как то по иному сделано? В вводом в компьютер проблем нет - синхронизация по кварцевому генератору 12.288 и данных с кодека. Проблема с выводом. До конца не решил. У меня цикл измерения около минуты - соответственно сделал буфер для генератора размером достаточным для непрерываемого выходного сигнала. Режимы - вместо (Int8U)UsbEpTransferIsochronous + (Int8U)UsbEpSynchAdaptive, я использовал (Int8U)UsbEpTransferIsochronous + (Int8U)UsbEpSynchAsynchronous + (Int8U)UsbEpUsageImplicit Проект сделан давно, че-то уже позабыл Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shtirlich 0 6 октября, 2011 Опубликовано 6 октября, 2011 (изменено) · Жалоба Пример на AVR32 Пример на 8-битном AVR забыл сказать, нужно чтобы ввод был стерео с частой не ниже 48 кГц. в данных примерах моно, причем на 8-ми битке частоты дискретизации 8 кГц В вводом в компьютер проблем нет - синхронизация по кварцевому генератору 12.288 и данных с кодека. Проблема с выводом. До конца не решил. У меня цикл измерения около минуты - соответственно сделал буфер для генератора размером достаточным для непрерываемого выходного сигнала. Режимы - вместо (Int8U)UsbEpTransferIsochronous + (Int8U)UsbEpSynchAdaptive, я использовал (Int8U)UsbEpTransferIsochronous + (Int8U)UsbEpSynchAsynchronous + (Int8U)UsbEpUsageImplicit Проект сделан давно, че-то уже позабыл видимо тоже буду пробовать на нем стартануть. кодек и синтезатор не проблема, они всеравно будут. кодек, точнее аудио АЦП, чтобы обеспечить нужное качество, а синтезатор уже давно юзаем дабы не плодить кучу асинхронных генераторов на плате. сейчас все реализовано на PCM2103 + MSP2234 как управляющий контроллер. хочется на одном корпусе. ту lebiga: я если что надоем с вопросами, Вы не против? Изменено 6 октября, 2011 пользователем Shtirlich Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lebiga 0 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба забыл сказать, нужно чтобы ввод был стерео с частой не ниже 48 кГц. в данных примерах моно, причем на 8-ми битке частоты дискретизации 8 кГц видимо тоже буду пробовать на нем стартануть. кодек и синтезатор не проблема, они всеравно будут. кодек, точнее аудио АЦП, чтобы обеспечить нужное качество, а синтезатор уже давно юзаем дабы не плодить кучу асинхронных генераторов на плате. сейчас все реализовано на PCM2103 + MSP2234 как управляющий контроллер. хочется на одном корпусе. ту lebiga: я если что надоем с вопросами, Вы не против? У меня стерео - 2 канала измерения, 48кГц, 16 или 20 бит. Кастомеру отдали версию с 16 бит - при 20 бит шумы все равно снижали диапазон до 16 бит . Регулировку volume переделал на регулировку входного усилителя (на цап DAC8043 и OP37, шаг усиления 2) - просто двигаешь рычажок в апликухе и все. Работоспособность хорошо проверяется через винамп. Можно посмотреть на diatos . kpi . ua - "Акустические измерения" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shtirlich 0 6 октября, 2011 Опубликовано 6 октября, 2011 · Жалоба У меня стерео - 2 канала измерения, 48кГц, 16 или 20 бит. Кастомеру отдали версию с 16 бит - при 20 бит шумы все равно снижали диапазон до 16 бит . Регулировку volume переделал на регулировку входного усилителя (на цап DAC8043 и OP37, шаг усиления 2) - просто двигаешь рычажок в апликухе и все. Работоспособность хорошо проверяется через винамп. Можно посмотреть на diatos . kpi . ua - "Акустические измерения" вот почти оно и надо! единственное меня под конец прочтения всего рекомендованого материала заглючило: какой из проектов мы обсуждаем в качестве примера. тоесть во фразе Делал на основании этого проекта. речь идет о экземпле который в иаре вложен? или о проекте от nxp? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shtirlich 0 7 октября, 2011 Опубликовано 7 октября, 2011 (изменено) · Жалоба кстати Юрий_СВ своей ссылкой на Atmel дал неплохую заценку. на сайте Атмеля можно скачать их набор библиотек для дляты AT91SAM7SE-EK. http://www.atmel.com/dyn/resources/prod_do...91sam7se-ek.zip. дальше по относительным путям: документация по проекту композитного аудио + CDC /at91sam7se-ek/softpack-1.5/usb-device-composite-cdcaudio-project/usbmi_devicemi_compositemi_cdcaudiomi_project0_dir_description.html а это про то как в аудио добавить запись /at91sam7se-ek/softpack-1.5/at91lib/usb/device/audio-speaker/USBAudioRecorder0_page_description.html чтото мне атмель сразу стал симпатичен.. короче я на распутье. кто что лично пробовал? посоветуйте USB_Audio_Recorder.pdf usb_device_composite_cdcaudio_project.pdf Изменено 7 октября, 2011 пользователем Shtirlich Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
lebiga 0 7 октября, 2011 Опубликовано 7 октября, 2011 · Жалоба вот почти оно и надо! единственное меня под конец прочтения всего рекомендованого материала заглючило: какой из проектов мы обсуждаем в качестве примера. тоесть во фразе речь идет о экземпле который в иаре вложен? или о проекте от nxp? экзампл в Иаре (папка NXP) и на сайте NXP - один и тот-же, могут быть легкие различия кстати Юрий_СВ своей ссылкой на Atmel дал неплохую заценку. на сайте Атмеля можно скачать их набор библиотек для дляты AT91SAM7SE-EK. http://www.atmel.com/dyn/resources/prod_do...91sam7se-ek.zip. дальше по относительным путям: документация по проекту композитного аудио + CDC /at91sam7se-ek/softpack-1.5/usb-device-composite-cdcaudio-project/usbmi_devicemi_compositemi_cdcaudiomi_project0_dir_description.html а это про то как в аудио добавить запись /at91sam7se-ek/softpack-1.5/at91lib/usb/device/audio-speaker/USBAudioRecorder0_page_description.html чтото мне атмель сразу стал симпатичен.. короче я на распутье. кто что лично пробовал? посоветуйте И в проекте NXP добавлять запись не надо - там она есть изначально. usb-device-composite-cdcaudio - не очень понял - это что - ЮСБ-КОМ преобразователь? Пожалуйста приводите полные ссылки - нет времени искать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shtirlich 0 10 октября, 2011 Опубликовано 10 октября, 2011 · Жалоба usb-device-composite-cdcaudio - не очень понял - это что - ЮСБ-КОМ преобразователь? Пожалуйста приводите полные ссылки - нет времени искать сам не нашел на сайте Атмела. поэтому и указываю пути относительно распакованного архива. для того чтобы люди не скачивали все печатнул в pdf 2 листа из документации. 2-й приктрепленный файл как раз описывает пример реализации в одном физическом устройстве 2 логических: USB - динамики и преобразователь USB-сом. если нужно еще чемто управлять кроме звука на стороне устройства данной решение наиболее простое и надежное. правда я позже поговорил с человеком активно пишущим под AVR32 и AT91, он их не сильно хвалил по быстродействию.. как бы то нибыло документация Атмела на их библиотеки в стиле Java мне показалась очень неплохим учебником по USB в случае если изучать кто-что-как делает. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Shtirlich 0 10 октября, 2011 Опубликовано 10 октября, 2011 · Жалоба экзампл в Иаре (папка NXP) и на сайте NXP - один и тот-же, могут быть легкие различия содержимое i2s.usb.audio.demo.zip которое я скачал с с сайта http://ics.nxp.com/support/documents/micro.../?type=software и содержимое папки \Embedded Workbench 6.0 Evaluation\arm\examples\NXP\LPC23xx\IAR-LPC-2378-SK\AudioDevice мне показалось разными проектами. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться