|
вопрос по LPC1768, посылка значений встроенного АЦП по USB |
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 27)
|
Oct 21 2010, 23:18
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(enclis_ @ Oct 22 2010, 04:35)  из документации на LPC1768 я понял, что время преобразования АЦП составляет 1 мкс. Откуда вы это взяли? См. вырезки из datasheet и user manual. 13MHz/65cycles=200kSPS. Цитата(enclis_ @ Oct 22 2010, 04:35)  под амплитудой я понимаю пиковое значение сигнала. Чтобы засечь пик нужно попасть на него. Для этого нужно хотя бы одно измерение "до того как" и одно измерение "после того как", чтобы понять - между ними было пиковое значение. 200kSPS дают временн ое разрешение не лучше 5мкс. А у вас всего-навсего 1 мкс.
Эскизы прикрепленных изображений
|
|
|
|
|
Oct 22 2010, 07:19
|
Участник

Группа: Участник
Сообщений: 64
Регистрация: 14-07-08
Пользователь №: 38 916

|
Если только ставить один или несколько компараторов, пороги которых настраиваются ЦАПо, это будет как уровень триггера в осциллографе, и интегрированный сигнал подавать на АЦП. Всё зависит от того зачем нужен этот сигнал.
|
|
|
|
|
Oct 22 2010, 15:26
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Цитата(enclis_ @ Oct 22 2010, 20:53)  А вообще говоря, какая должна быть скорость взятия выборок и полоса пропускания у АЦП для моей задачи? Это зависит от формы импульса. В общем случае ограничение Котельникова-Найквиста-Шеннона накладывается. То бишь для обнаружения импульса полоса должна быть как минимум вдвое шире 1/t, где t-длительности импульса. Если t=1мкс, то быстродействие АЦП 2/1мкс=2МSPS. Для измерения в принципе хватит такой же полосы, но нужен внешний пиковый детектор, напряжение которого сможет измерить АЦП в паузе после того, как импульс обнаружен. Если пикового детектора нет, то требования к быстродействию АЦП могут значительно увеличиваться в зависимости от формы импульса.
|
|
|
|
|
Oct 22 2010, 16:23
|
Частый гость
 
Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501

|
меня тоже больше интересует USB, потому что сам я никогда не работал с ним( Цитата Но отжирать ресурсов эта передача будет не слабо. 500К в секунду. 500К в секунду каких единиц? Цитата Осциллограф хотите сделать? Мне не нужен осциллограф, скорее самописец. мне нужно знать, что пришел импульс, когда он пришел и его амплитуду. Цитата Раньше выпускался контроллер (ДСП) с АЦП 20 МГц. ADSP 21992 Сейчас решаю вопрос могу ли сделать все на LPC1768, потому что у меня есть девкит с ним. Если не получиться то буду переходить на другой контроллер, может быть даже на DSP.
Сообщение отредактировал enclis_ - Oct 22 2010, 16:27
|
|
|
|
|
Oct 22 2010, 16:45
|

Гуру
     
Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515

|
Цитата 500К в секунду каких единиц? Это вы у меня спрашиваете? Время - 4 байта, амплитуда - 1 байт. Итого 5 байт на импульс. Максимальная частота - судя по вашим словам - 500кГц. Итого - 2.5М\с. USB не катит. (Теор. достижимая в USB - 1.5M) Хуже того, АЦП должен работать как заведенный на частоте не ниже 1МГц. А проц у вас 100Мгц. Тут есть над чем подумать.
--------------------
On the road again (Canned Heat)
|
|
|
|
|
Oct 22 2010, 18:15
|
Частый гость
 
Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501

|
Цитата(DpInRock) Время - 4 байта, амплитуда - 1 байт. Итого 5 байт на импульс. Максимальная частота - судя по вашим словам - 500кГц. Итого - 2.5М\с. USB не катит. (Теор. достижимая в USB - 1.5M) Там реально за 1 секунду 500к импульсов не свалятся, а только лишь 20-25к не больше, но они могут идти очень близко друг к другу, но менее 1 мкс. Извините, что завел Вас в некоторое заблуждение не написав об этом сначала. Цитата(DpInRock) Хуже того, АЦП должен работать как заведенный на частоте не ниже 1МГц. А проц у вас 100Мгц. Я уже понял, что нужно использовать внешний АЦП. Цитата(Tanya) Вы так и не сказали, какова максимальная длина записи... И что потом с этой пропастью цифр делать... Все это делается ради одного научного эксперимента. Максимальная длительность записи 3 часа. Все полученные данные записываются в текстовый файл или несколько текстовых файлов, а затем обрабатываются в каком-либо математическом пакете.
|
|
|
|
|
Oct 22 2010, 23:25
|
Гуру
     
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882

|
Компаратор послужит детектором - определит наличие импульса, а АЦП, запустившись от сигнала компаратора, сделает измерение амплитуды импульса. Но для того, чтобы измерение было корректным и точным нужен пиковый детектор и устройство выборки-хранения, которое на время измерения будет "помнить" амплитуду сигнала, зафиксированную пиковым детектором во время действия импульса. Потому, что строго "прямоугольным" импульс бывает только в воображении дилетантов  То бишь, измерять нужно после окончания импульса, в промежутке между ним и следующим импульсом. Для этого и потребуется УВХ. Хотя если вам заранее известно, что импульс именно дельтаобразный и максимальная ампитуда у него в центре, то можно запускать преобразование АЦП, сделав паузу от начала импульса в 0,5мкс. Многие АЦП типа SAR содержать УВХ внутри себя.
|
|
|
|
|
Oct 23 2010, 13:40
|
Знающий
   
Группа: Свой
Сообщений: 600
Регистрация: 27-05-05
Пользователь №: 5 482

|
будьте проще  и люди потянутся варианты: 1. если нужно знать время импульста то LPC однозначно не проходит, т.к. в худшем случае только поток амплитуд будет 8Мбит/с - через FSUSB не прокачаете ни LPC, никаким другим, так как еще нужны метки времени - 6байт чтоб обеспечить разрядность 1мкс за три часа, т.е. поток увеличивется до 40МБит/с 2. берете проект USBee (на казусе) - там ацп 24 мгц через HSUSB и на компе этот поток обрабатываете. только софтовую оболочку допатчиваете, вроде такая возможность есть. 3. мощный проц >300мгц с параллельной шиной на 32бит а несколькими же параллельными флэшами на шине вариант 4. если средний поток значительно меньше пикового, можно попробовать складывать данные в кольцевой буфер и оттуда отдавать через тот же FSUSB. тогда LPC1768 вполне потянет с внешним ацп. какой должен быть средний поток посчитайте сами.
|
|
|
|
|
Oct 31 2010, 15:55
|
Частый гость
 
Группа: Свой
Сообщений: 119
Регистрация: 21-09-09
Из: Москва
Пользователь №: 52 501

|
Цитата(rezident @ Oct 23 2010, 02:25)  Компаратор послужит детектором - определит наличие импульса, а АЦП, запустившись от сигнала компаратора, сделает измерение амплитуды импульса. Но для того, чтобы измерение было корректным и точным нужен пиковый детектор и устройство выборки-хранения, которое на время измерения будет "помнить" амплитуду сигнала, зафиксированную пиковым детектором во время действия импульса. Потому, что строго "прямоугольным" импульс бывает только в воображении дилетантов  То бишь, измерять нужно после окончания импульса, в промежутке между ним и следующим импульсом. Для этого и потребуется УВХ. Хотя если вам заранее известно, что импульс именно дельтаобразный и максимальная ампитуда у него в центре, то можно запускать преобразование АЦП, сделав паузу от начала импульса в 0,5мкс. Многие АЦП типа SAR содержать УВХ внутри себя. У меня в голове что-то такое рисуется, я правильно понимаю?
Сразу вопрос по выбору компонентов OP1, OP2, T1, T2, Z1 и U2 ) Цитата(DpInRock @ Oct 23 2010, 03:14) Сложно все. Дохлый номер ловить программно микросекундные импульсы.
Наверняка амплитуду надо знать примерно. А время - точно.
Есть параллельные ацп, очень быстрые 6 разрядные типа AD9066. Соединяем АЦП с портом каким-нибудь. Программируем пины на прерывание по изменению. И по первому же прерыванию - запрещаем оные и со всей силы начинаем смотреть за показаниями. Выбираем максимальное, капчурим время, и ждем когда обнулится все (Можно и нужно младший разряд не использовать....). После чего опять все разрешаем. Идея хорошая - надо будет попробовать как будет время. Цитата(dac @ Oct 23 2010, 16:40) 2. берете проект USBee (на казусе) - там ацп 24 мгц через HSUSB и на компе этот поток обрабатываете. только софтовую оболочку допатчиваете, вроде такая возможность есть. 3. мощный проц >300мгц с параллельной шиной на 32бит а несколькими же параллельными флэшами на шине вариант 4. если средний поток значительно меньше пикового, можно попробовать складывать данные в кольцевой буфер и оттуда отдавать через тот же FSUSB. тогда LPC1768 вполне потянет с внешним ацп. какой должен быть средний поток посчитайте сами. Спасибо за предложение, но бюджет средств ограничен, поэтому использовать не могу - хотя очень хотелось бы
Сообщение отредактировал enclis_ - Oct 31 2010, 16:01
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|