Меню

+7 (495) 785-95-25
sale@lcard.ru
sale@lcard.ru
Страницы 1
Тема закрыта
|
||||
|
Е-440: скорость работы ф-ии DAC_SAMPLEДобрый день, Можно ли оценить временные затраты на вызов ф-й DAC_SAMPLE и ADC_SAMPLE?
Задача состоит в том, чтобы однократно вывести заданное значение напряжения на ЦАП (DAC_SAMPLE),
Зависит ли скорость работы этих ф-й
|
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLE... У нас получается ~25мс для DAC_SAMPLE, это нормально или много?
|
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLEСпасибо, Сергей. Работать на уровне DSP модуля пока небыло необходимости, но сейчас, видимо, придется |
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLEНа уровне DSP, если закон управления не очень сложен, то можно обойтись минимальной доработкой - сделать совмещенную функцию однократного ввода и вывода (ADC+DAC SAMPLE). Время тратится в основном на обработку команды по USB, там медленный канал управления. Еще можно чисто программно попытаться использовать потоковый ввод на достаточно большой частоте дискретизации, чтобы уйти от команды ADC_SAMPLE. Конечно, будет задержка из-за передачи данных блоками, но ее можно попытаться сделать более детерминированной и, если повезет, в несколько раз поменьше, чем 25 мс (если, скажем, поставить в очередь много вызовов ReadFile() с небольшими буферами в режиме overlapped?...)
|
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLE"Еще можно чисто программно попытаться использовать потоковый ввод..."
|
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLEЕстественно, в таком режиме от размера буфера и частоты все зависит чуть менее, чем полностью. Код при таких двух разных режимах я бы не стал унифицировать, тут лучше две отдельные процедуры сделать... Между прочим, у E14-140-MD есть настоящий потоковый вывод на ЦАП. Для первого режима он ни к чему, а вот для второго может быть интересно. |
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLE"Естественно, в таком режиме от размера буфера и частоты все зависит чуть менее, чем полностью. Код при таких двух разных режимах я бы не стал унифицировать, тут лучше две отдельные процедуры сделать..."
|
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLE... Зависит ли как-то скорость работы однократных ф-й от установленных параметров??? ...
|
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLEИсправление: выше я написал не то название модуля (у E14-140-MD тоже есть потоковый ЦАП, но тут мы говорим про E14-440D). Насчет структуры Вашей программы - вроде бы все нормально, если Вы не забыли перед началом потокового вывода заполнить буфер ЦАП.
Несколько сложнее, если время работы большое или неопределенное, и если сигнал пишется на диск или обрабатывается как-то в процессе работы. Тогда мы обычно рекомендуем делать двойную буферизацию. В применении к задаче типа Uout = f(Uin), где Вы используете однократный ввод/вывод, можно экспериментировать с потоковыми режимами, но тут ситуация получается необычная: обмен надо стараться делать _маленькими_ блоками, чтобы уменьшить задержку между физ. процессом и моментом обработки данных компьютером. То есть это имеет смысл, если задержка из-за буферизации существенно меньше, чем время выполнения команды однократного ввода/вывода.
|
|||
|
||||
|
Re: Е-440: скорость работы ф-ии DAC_SAMPLEнасчет E14-440D - пока работаем с тем, что есть ...Насчет структуры Вашей программы - вроде бы все нормально, если Вы не забыли перед началом потокового вывода заполнить буфер ЦАП...
Всем спасибо! |
Страницы 1
Тема закрыта