Меню

+7 (495) 785-95-25
sale@lcard.ru
sale@lcard.ru
Страницы 1
|
||||
|
Запуск АЦП Е502 от внешнего сигналаЗдравствуйте, у меня возникла вот такая дилемма: внешний сигнал, по которому надо оцифровывать, выглядит следующим образом(описываю физический уровень, 1 - +3.3В, 0 ~ GND): в начальном состоянии держится 1, затем идет 12 стробов меандра, в каждом из которых длительность 0 = 0,25 мкс, длительность 1 = 0,25 мкс, т.е. период = 0,5мкс, частота 2МГц, затем идет пауза около 1 мкс, при которой сигнал висит в 1, а потом опять 12 стробов с теми же параметрами и так 2094 раза... внешний сигнал формирует ПЛИС(не стоящая в Е502), времянка соответствует действительности, проверил на осциле... я использовал синхронный режим оцифровки, старт оцифровки я задал внутреннюю частоту, а вот саму оцифровку через спад DYSIN1, к этому пину подключен внешний сигнал, описанный выше... но каждый раз я получал количество отсчетов на 1 меньше, тогда я вставил один импульс прямоугольный(меандр) до начала основной передачи за 3 мкс, длительность 0 и 1 которого так же 0,25 мкс, тогда все пришло в норму по количеству... но вот только смущают результаты, что я оцифровываю, такое ощущение, что Е502 не по перепаду из 1 в 0 оцифровывает, а в каком-то другом месте... по умолчанию: вот прилагаю код настройки АЦП:
считываю данные в потоке вот таким образом:
мне необходимо считать данные в момент времени, когда внешний сигнал падает из 1 в 0... правильно ли я задаю режим оцифровки, особенно интересует старт(X502_SetSyncStartMode) и задание тактовой частоты(X502_SetSyncMode) для оцифровки АЦП??? почему мне я получал количество данных при оцифровке на 1 меньше при подаче внешней частоты(из-за этого пришлось добавить 1 строб до оцифровки)??? |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаПеред тем как проанализировать возможность такого режима, хотелось бы уточнить, последние ли у Вас версии прошивок ARM (версия 1.0.13) и ПЛИС (версия 0.11)? Посмотреть можно в LQMeasStudio (обновить ARM можно оттуда же файлом http://www.lcard.ru/download/e502-m4.bin, а прошивку ПЛИС через утилиту lxfw-update, которая входит в SDK - в последней версии SDK должна быть последняя прошивка). |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналапрошивки на модуле Е502 стояли ARM версия 1.0.9 и ПЛИС версия 0.1, сейчас обновлю и прогоню тесты заново... отпишусь о результатах, как все сделаю спасибо за оперативный ответ |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаРоман, если внешний сигнал для преобразования АЦП будете подавать на входы DI_SYN1, DI_SYN2, CONV_IN, то для этих режимов внешней синхронизации максимальная частота синхросигнала составляет 1,5 МГц. Отредактировано Гарманов Александр (12.09.2016 16:16:39) |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналат.к. я задаю внешний сигнал через ПЛИС, не могли бы указать, максимальные длительности 0 и 1 при частоте в 1,5 МГц с точностью до 10нс, просто выходит период в виде дробного числа 0,66666 мкс если я задам длительность 0 и 1 внешней частоты для Е502 равными 340 нс, т.е. период будет равен 0,68 мкс, частота примерно будет равна 1,47 МГц - корректно ли будет отрабатывать оцифровка??? и правильно ли я понимаю, что необходимо так же при настройке АЦП вызвать в самом начале так же надо ли мне вызывать функцию X502_SetAdcFreq??? |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаРоман Петров пишет:
Да, может использоваться произвольная частота меньше или равная 1,5 МГц. Да, вызов X502_SetExtRefFreqValue() и после X502_SetAdcFreq() будет правильным, при этом, если хотите, чтобы каждому спаду частоты соответствовало измерение, то частота АЦП в X502_SetAdcFreq должна быть равна значению частоты, указанному при вызове X502_SetExtRefFreqValue() (как у Вас и указано), тогда соответственно делитель частоты АЦП будет выставлен в 1 как вам и требуется. В принципе X502_SetExtRefFreqValue() может принимать просто значения в Гц, не обязательно одну из 2-х констант (т.к. внешняя частота может быть любой в пределах 1.5 МГц). Это значение не влияет напрямую на оцифровку в модуле и может строго не соответствовать реальной внешней частоте, но указание близкого значения позволяет более оптимально выделать внутренние ресурсы при передаче данных. В общем при таких условиях и настройках модуль должен работать как Вам требуется, если после обновления и снижения частоты останутся проблемы, то пишите. |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаСейчас прогнал оцифровку, примерно получается то, что я ожидал при оцифровке... у меня вот только вопрос - я хочу оцифровать 12 отсчетов по спаду DY_SYN1 если я посылаю внешний сигнал с частотой 1,47 МГц(такая же ситуация была и на 2МГц), где в 0 сигнал переходит 12 раз, т.е. меандр с перепадом в 0 12 раз, то оцифровывается только 11 отсчетов(я имею ввиду, что получаю при считывании при вызове функции X502_Recv, а потом X502_ProcessAdcData), пробовал увеличивать время ожидания данных и т.д., но все равно получаю только 11 отсчетов... если до начала основной оцифровки сделать 1 раз перепад DY_SYN1 из 1 в 0 с той же частотой, а потом только через некоторое время(у меня около 3 мкс) начать цифровать(12 меандров с частотой 1,47 МГц), то появляется 12 отсчетов, а реально сигнал на DY_SYN1 изменяется с 1 на 0 13 раз, а не 12.... почему так происходит???? и корректно ли это??? |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаРоман, мы воспроизвели Ваш эксперимент у себя. По факту всё происходит так, как Вы описываете. Причину конвейерной задержки на 1 такт синхронизации посмотрим. Сообщим позже, можно ли этот вопрос решить и каким способом. |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаменя еще интересует, в какой именно момент фиксируется аналоговое значение на аналоговых входах и начинается их оцифровка - прямо в момент спада DY_SYN1, либо значение относительно спада DY_SYN1 + какая-то задержка??? |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаРоман, |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналая уже реализовал запуск 13 спадов,т.е. как я писал, 1 спад в самом начале, а через 3 мкс 12 спадов- вот меня интересует, на этих 12 спадах самая первая оцифровка Е502-это 1й из 12 перепадов(2й из 13 перепадов), т.е. полученные 12 оцифровок в программе будут соответствовать 2му по 13й спад внешнего для Е502 сигнала? |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаРоман, чтобы получить 12 отсчётов данных, лишний 13-ый импульс на DI_SYN1 нужно добавлять не в начале, а в конце. По факту так работают текущие прошивки L-502 и E-502. Но уже сейчас понятно, что проблема решится обновлением прошивки FPGA (лишний импульс не потребуется). Советую подождать обновления, которое постараемся выпустить оперативно. |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаРоман, в любом случае, прошу либо подтвердить, что Вы ждёте обновление ПО, о котором я говорил выше, либо сообщить, что оно для Вас не актуально. |
|||
|
||||
|
Re: Запуск АЦП Е502 от внешнего сигналаРоман, при детальном рассмотрении выяснилось, что трудозатраты на внесение изменений в эту часть проекта FPGA оказались слишком велики, чтобы данную работу можно было проделать оперативно и между делом. Данную работу целесообразно проводить только в рамках постановки более общей задачи по добавлению новых режимов синхронизации в изделия L-502/E-502. Требуется включение этой работы в план, привязанный к конкретному заказу. Решения по заказам принимает наш отдел продаж. Таким образом, сроки выхода обновления прошивки FPGA пока не определены. К сожалению. |
Страницы 1