Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


Много простых вопросов l-783

Вы не вошли.

 Поиск | Регистрация | Вход 

Евгений
19.10.2005 09:37:41
#1

Гость

Много простых вопросов l-783

Всем доброго дня.

После рассмотрения примеров сразу возникло множество вопросов.

1. Хотелось бы уточнить как формируются номера логических каналов. У меня для опроса первого канала с единичным усилением, 32канальный режим, получается следующее, 0010000 в двоичной системе = 0х10 в шестнадцатиричном =16 в двоичной? Или я что то путаю.
2. размеры буфера которые мы задаем в RequestBuffer И FillADCParametrs_PLX как-то связаны между собой или это совершенно разные параметры?
3. Размер буфера=IrqStep*pages
4. В примере на LabView функция GetDataFromBuffer берет адрес памяти из SetParametrs который расположен за циклом, то есть для организации циклического получения данных следует увеличивать DWORD DataPtr в GetDataFromBuffer на (IrqStep*pages)/2 и обратно и также поступать с Sync в функции GetSyncData?
5. Для значений FiFo=IrqStep=1024 pages=32 данные следует начинать считывать из соответствующей половины буффера когда значение Sync в функции GetSyncData=16384.

Может вопросы покажутся но для меня они в данный момент вполне актуальны.
Заранее благадарю всех кто не пожалеет пару минут для растолковывания мне этих элементарных истин.

19.10.2005 10:50:37
#2

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Много простых вопросов l-783

1 16 в десятичной, а так нормально...
2 Разные. Request это как malloc в С, а в Fill задается то сколько будет реально использоваться из выделенного ранее.
3 да
4 ну в принципе да это будет по половинкам буфера. Sync счетчик и там ничего увеличивать не надо, можно просто руководствуясь этим  значением работать и не по половинкам...
5 да

Евгений
19.10.2005 13:37:42
#3

Гость

Re: Много простых вопросов l-783

Спасибо, вроди бы потихоньку все проясняется, но пока не понятно вот что:
1. Подключаюсь к 1-у каналу т.е. 16-нога сигнал, 17-36-земля, 37-сигнал синхронизации. Тогда вижу его при Chn=0;, Chn=1;, Chn=15;, Chn=16;, Но мне нужен только 1-й. Я так понимаю что правильно будет: Chn=16;

2."Sync счетчик и там ничего увеличивать не надо, можно просто руководствуясь этим значением работать и не по половинкам..."
допустим FiFo=IrqStep=1024 pages=32 при Sync = или > 16384 отрабатывает StopLDevice и GetDataFromBuffer читает массив данных начиная с адреса DWORD DataPtr=хххх. значит ли это что при повторном прохождении цикла т.е. опять Sync = или > 16384 в GetDataFromBuffer DataPtr=хххх мы каким то образом будем читать данные из другой части буфера? или новые данные из этой же части буфера.
3. И еще существуют ли минимальные ограничения на FiFo и page? А то при длительной регистрации массивы получаются довольно громоздкие.
4. double *Kadr- т.е. *Kadr=1с значит раз считали массив потом прервались на 1с.

Еще раз спасибо за исчерпывающие ответы.

19.10.2005 14:18:58
#4

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Много простых вопросов l-783

1 не понял. но если к первому то и номер должен быть первый. на всем остальном незаземленном может быть что  угодно.
2 новые данные из тойже части буфера. буфер циклический
3 page 2 а фифо само скажет когда оно минимальное но не меньше 128 по моему..
4 да считали массив из заданного количества каналов и на 1с интервал. Каналы перебирали с частотой Rate/