Перейти к содержанию
    

прием данных из АЦП в ПК по USB

Здравствуйте. Я вот хочу замутить девайс: звуковой АЦП + ЮСБ. Нужно для качественной оцифровки аудиосигналов. Начал с поиска качественного АЦП. Остановился на WM8785 24@192кГц. При внимательном изучении даташита обнаружил неприятный факт: тактовый сигнал BCLK оцифрованых данных соответствует тактовой частоте самой имс, т.е. 40 МГц!! Ну что ж CY7С68013 сразу в топку - дорого и не понятно. Взору пал ARM7. Но где то слышал, что он не потянет такой поток. Поэтому пришлось искать другой АЦП. Номенклатура большая а доступных ФИГ.

Остановился на pcm1803. Частота BCLK 6 МГц. Хочу использовать с AT90USB. Тактовая частота у нее 16 МГц, а пропускная способность ЮСБ - 12Мбит, что с запасом - 24*92000.

Собственно вопрос - испльзовал ли кто AT90USB для таких целей, и потянел ли она?

После выбора pcm1803 давит жаба - очень желательно 192 кГц, но не могу найти доступную в Украине. Может кто знает ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Помогите выбрать микроконтроллер для следующей задачи:

 

необходимо по сигналу готовности данных принимать принимать данные из 8-10 разрядного АЦП с частотой порядка 10 Мегавыборок в секунду и без какой-либо обработки отправлять их в комп по USB, где приложение будет тупо этот поток сбрасывать на диск. Таким образом необходимая скорость передачи данных 10-15 МБ\сек.

 

Сам приматриваюсь к Cypress FX2.

 

Возможно ли на нем реализовать подобный обмен?

 

 

Ситема: АЦП - FPGA - USB (68013).

Работаю в режиме AsincSlaveFifo. Данные от АЦП постоянно пишу в 68013. Использую 2 ENDPOINT , один на передачу, другой - на прием.

Прием - изменение параметров сбора. При получении прерывания сбор прекращаю установкой сигнала PKTEND, чтобы закончился пакет .

При приеме от 68013 по IRQ (знаю, что придет 4 байта), прекращаю передачу в 68013 ,изменяю адрес FIFO, читаю ....

Возникла проблема: посланный код получаю лишь по второй посылке.

Т.е первое чтение - предыдущее значение, второе - правильный код.

Может кто подскажет?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Осваиваю CY7C68013A

Требуется выдача/приём из/в ПК в FPGA со скоростью 60 МБит/с (либо выдача либо приём).

Насколько я понимаю необходимо сделать большой буфер на EP2 (4*1024) и слать туда данные, а на устройстве организовать SLAVE FIFO

Попробовал проект Archive.rar из http://electronix.ru/forum/index.php?showt...st&p=403476.

Насколько я понял там используется GPIF для приёма данных.

Хотелось бы сделать что-то подобное.

Для начала я хотел использовать пин IFCLK как выход - записываю в IFCONFIG 0xA3 - на пин IFCLK ничего не появляется - почему?

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Осваиваю CY7C68013A

...

Для начала я хотел использовать пин IFCLK как выход - записываю в IFCONFIG 0xA3 - на пин IFCLK ничего не появляется - почему?

Проверьте не закорочен ли вывод IFCLK.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Осваиваю CY7C68013A

Требуется выдача/приём из/в ПК в FPGA со скоростью 60 МБит/с (либо выдача либо приём).

Насколько я понимаю необходимо сделать большой буфер на EP2 (4*1024) и слать туда данные, а на устройстве организовать SLAVE FIFO

Попробовал проект Archive.rar из http://electronix.ru/forum/index.php?showt...st&p=403476.

Насколько я понял там используется GPIF для приёма данных.

Хотелось бы сделать что-то подобное.

Для начала я хотел использовать пин IFCLK как выход - записываю в IFCONFIG 0xA3 - на пин IFCLK ничего не появляется - почему?

 

При ваших скоростях подойдет любой буфер (любая конфигура буферов кроме EP2 (4*1024)). Слать туда-сюда надо 2 ендпоинта: один IN, другой OUT. Вам подойдет 5ая конфигурация буферов ФИФО из описания CY7C68013A.

Скачайте с сайта Cypress AN61345 и приложения к нему, там все подробно изложено и используется как-раз 5 конфигурация. В прошивке контроллера не забудьте правильные VID PID прописать, иначе примеры не работают со Streamer.exe.

Изменено пользователем Силаев

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

насчёт того что не работает IFCLK: я использую микросхему в 56-ти выводном корпусе и 21 нога у неё по даташиту RESERVED. поскольку макет делал сам, глядя на это RESERVED оставил ногу в воздухе... и уж после того как собрал ещё один макет со второй такой же микросхемой и получив те же результаты - я заострил на этом внимание и поглядев схему evalution board повесил ногу через 10к на корпус - после этого заработало. (на выходе ifclk имеется частота)

на данный момент получилось:

Slave FIFO + EP2 OUT Bulk (512k*4) - вижу данные на выходах, вижу флаги фифо. пока разбираюсь что за данные (и готовлю проект для ПЛИС), но при отправке большого файла через CyConsole глядя на флаг EP2Empty - вижу что он периодически возникает - то есть данные выдаются быстрее (частота выдачи 30 МГц), чем они приходят.

Почему передача данных не успевает? CyConsole не предназначена для потоковой передачи? или что то не так в железе?

Сейчас скачаю AN61345 - посмотрю какая там будет скорость.

P.S. Да, и микросхема греется, но терпимо - градусов под 60 - это нормально?

Изменено пользователем gumanoid

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

на сайте cypress про AN61345 написано

"The document Implementing an FX2LP-FPGA Interface - AN61345 is currently being reviewed and updated."

Может кто нибудь, у кого есть выложит сюда?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

... Да, и микросхема греется, но терпимо - градусов под 60 - это нормально?

У меня CY7C68013A в 100-выводном корпусе не нагревается выше комнатной температуры. Точнее, на ощупь температура всегда ниже 36 градусов Цельсия.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

на данный момент получилось:

Slave FIFO + EP2 OUT Bulk (512k*4) - вижу данные на выходах, вижу флаги фифо. пока разбираюсь что за данные (и готовлю проект для ПЛИС), но при отправке большого файла через CyConsole глядя на флаг EP2Empty - вижу что он периодически возникает - то есть данные выдаются быстрее (частота выдачи 30 МГц), чем они приходят.

Почему передача данных не успевает? CyConsole не предназначена для потоковой передачи? или что то не так в железе?

Сейчас скачаю AN61345 - посмотрю какая там будет скорость.

P.S. Да, и микросхема греется, но терпимо - градусов под 60 - это нормально?

 

В AN61345 можно посмотреть скорость на прием из контроллера. Потребуется запустить Control Center и Streamer. В Streamer выбрать EP6 на прием, нажать старт. В Control Center выбрать тоже EP6. Во время работы Streamer можно жать Transfer Data в Control Center. Там можно контролировать целостность данных визуально. Поле должно заполняться значениями счетчика 00...FF без сдвигов. Если по USB подключен только FX2LP то у меня скорость до 40МБ/сек.

 

Запускал передачу со счетчика на 10 часов. Сбоев нет. Температура FX2LP не чуствуется пальцем. Возможно у вас старая версия FX2 без LP, он грелись сильно. Или реализован не чистый SlaveFifo, что-то занимает процессор контроллера и он греется.

 

ДЛя отладки хорошо вывести все сигналы интерфейса с ПЛИС на быстры логический анализатор. Я отлаживал на 4 канальном осциллографе. Каналов не хватало для удобной работы.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

P.S. Да, и микросхема греется, но терпимо - градусов под 60 - это нормально?

 

микросхема CY7C68013A 56-Pin SSOP slave_fifo внешняя синхронизация ep6 (4*512) ep2 (4*512).

грелась когда буфер заполнен единицами под 60 градусов, даже если передача не идёт.

Не знаю какая у них там логика работает, но решилось привязкой SLOE к работе SLWR и SLRD.

Может пригодится кому :rolleyes:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую. У меня вопрос. Есть готовые модули с али AD9226 12bit AD  и EZ-USB FX2LP CY7C68013A. Необходимо с АЦП поток данных с частотой 16 Мегасемплов в секунду без обработки отправлять в комп по USB. Может кто может подсказать с как подобное можно осуществить, или хотя бы ткнет носом в подобное устройство с описанием и схемой подключения. Видел подобное http://booyasdr.sourceforge.net/Booya16SDRDoc.htm  но автор на контакт не идет.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

14 часов назад, ivanovgoga сказал:

Может кто может подсказать с как подобное можно осуществить, или хотя бы ткнет носом в подобное устройство с описанием и схемой подключения.

Зайти на cypress.com и скачать необходимые тулзы и доки для CY7C68013A - не пробовали?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Пробовал, но что-то пошло не так.. Но все-таки вчера ночью нарвался на подобный проект. Сейчас колдую над ним. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...