Меню

+7 (495) 785-95-25
sale@lcard.ru
sale@lcard.ru
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++Насчет RequestBuffer там все правильно ибо я и создавал один отсчет (в поле экспериментов)..
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++это то что драйвер печатает... поля структуры WADC_PAR_0 как они дошли до него... Rate левый число каналов 0, а в массиве логических номеров лажа.... Кроме этого памяти выделили 1, а собирать хотите 32 страницы по 0x800.... |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++при инициализации структуры
к чему бы это?? что делает такого FillDAQparameters и кстати заодно вопрос что делается с полями помечаными в мануале *
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++это поля для внутреннего пользования платы уже те коды в делители. Вычисляются они... |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++а что с этим?
почему так происходит? |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++значит так неудачно передаются параметры структуры...какая-то несовместимость..
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++сначала вызывается инициаизация : (где собственно и вызывается ReadPlataDesr) public unsafe string Initialization()
InitializationLog += "Loading lcomp.dll/n";
hIfc = csDriverLibrary.CallCreateInstance(ref hDll, slotNum, ref Err); //указатель на устройство
Err = csDriverLibrary.LoadBios(ref hIfc, "l780");
Err = csDriverLibrary.ReadPlataDescr(ref hIfc, ref L780_Description);
public uint NumberOfSamples = 1000000; // количество отсчетов
public unsafe string SetWorkParameters()
csDriverLibrary.FillDAQparameters(ref hIfc, ref InitParameters, (uint)2); //sp_type (t1=0, t2=1, t3 = 2, t4 =3) //InitParameters.dRate = 200; // частота опроса каналов в кадре (кГц);
uint tm = NumberOfSamples; // количество отсчтов
Err = csDriverLibrary.SetParametersStream(ref hIfc, ref InitParameters, /*csDriverLibrary.L_STREAM_ADC*/ (uint)2, ref tm, ref dataStartPointer, ref syncVarPointer, csDriverLibrary.L_STREAM_ADC);
DAQparameters.t3 = InitParameters; Err = csDriverLibrary.EnableCorrection(ref hIfc,1); // Коррекция
дальше только StartLDevice ...
public unsafe struct WADC_PAR_0
public ushort AutoInit; public double dRate;
public ushort SynchroType;
все правильно?
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++в структуре Rate тоже должен быть ushort, и кроме этого вопрос в байтовой упаковке структуры.... |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++он там ushort - это я при переписывании ошибся....
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++добавил атрибут к структуре - тот про который Женя писал: LayoutKind.Sequential,Pack=1
теперь это вроде как похоже на правду..... буда сейчас дальше экспериментировать.....
LDevicePci: In DIOC_READ_FLASH_WORD
LDevicePci: In SETUP
0x0004 0x0000 0x0800 LDevicePci: Set Buffer
0x0800 LDevicePci: In INIT_SYNC
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++В общем спасибо всем большое!!!!
Спасибо большое Poul и хоть развернутость ваших ответов меня несколько смущала (чтение ответа преваращалась в угадайку) тем неменее без вас вообще бы никуда.... в общем спасибо..
и по ходу вопрос.... эта программа, которую мы все вместе запустили на 780 устройстве, вообще то "кошка" реально нужно будет управлять 14-440 устройством.. я так подозреваю что в общем то это тот же 780 только с USB и все изменения будут на уровне установки драйверов. Т.е. Я надеюсь что все кроме другого биоса.. Поправте меня если я не прав...
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++у 440 свои драйвера и функции тоже слегка свои...но принципы теже... ответы специально коцаные чтобы задумываться....
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++при помощи GetDataFromBuffer так и не получилось достать данные System.Runtime.InteropServices.Marshal.Copy достает достает данные типа 0
числа меняются, значит данные с платы =/. но откуда такие здоровые числа ? ведь они должны быть ос -2000 до +200 у L-783 пытался еще настроить плату на выбор данных с одного канала : helper.NCh = 1; // количество опрашиваемых каналов ;
выводятся не меняющиеся данные. |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++данные должны быть - signed 16 bit |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++1. Хотел уточнить как из массива данных вынимать каналы ? я пробовал выделять таким образом : допустим у нас 4 канала. Тогда я брал данные i-го канала по адресу data[4*k + i] где k - номер отсчета. Но когда я отобразил полученные данные графически и сравнил с тем, что отображает старая прога, увидел, что данные явно не те - даже не близко. 2. И еще у меня фигня такая происходит - когда выполняю прогу из под Visual Studio, указатель на данные крутится примерно в районе - 65 605 632. Данные выбираются меняются; А когда запускаю сгенерированный exe-шник (запускаю не из под студии), указатель на данные уже находится в районе 18 026 496 и данные не меняются. 3. При настройке каналов шестнадцатеричными числами - вот так : helper.Chn[0] = 0x14; // массив с номерами каналов и усилением на них; описывает порядок опроса каналов;
всё работает нормально (относительно когда настраиваю таким образом - for (int i = 0; i < 10; i++)
данные не идут массивы helper.Chn сравнивал после обоих случаев - идентичны. Почему плата ведет себя по разному ? магия... |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++Есть вопрос ....
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++обновлены но не все...когда счетчик 2048 то в массиве 0...2027 свежие данные... |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++точно 2027 - не 2047???? |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++2047... опечатался... |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++Если у кого что-то получилось на C# может поделится классом или даже программкой какой? |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++Поделитесь, пожалуйста, исходничком! Вроде как в начале получается, но дальше застрял...Что такое csDriverLibrary и прочее...
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++если кого интересует вот мои исходники, которые кое-как работают. class Program
adcPar.s_Type = 1;
string s = "lcomp.dll";
uint tm = 1000;
Err = wlcomp.RequestBufferStream(ref hObj, ref tm, wlcomp.L_STREAM_ADC);
Err = wlcomp.EnableCorrection(ref hObj,1); Console.WriteLine("EnableCorrection " + Err.ToString());
short[] MasOfData = new short[2048];
Err = wlcomp.StartLDevice(ref hObj); Console.WriteLine("StartLDevice " + Err.ToString());
Console.Write( " syncVarPointer = " + sync.ToString() + " dataStartPointer = " + Data.ToString());
//Marshal.Copy(Data, MasOfData, 0, 1000); uint RealAdress = 0;
for (int i = 0; i<2048; i++)
}
wlcomp.CloseLDevice(ref hObj);
[StructLayout(LayoutKind.Sequential)]
[StructLayout(LayoutKind.Sequential)]
[StructLayout(LayoutKind.Sequential)]
public uint AutoInit; public double dRate;
public uint SynchroType;
public uint NCh;
static class wlcomp
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
///
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
//[DllImport("C:/Program Files/L-Card/LIBRARY/BIN/wlcomp.dll")]
|
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++и следом вопрос аналогичный вопросу Жени от 10.03.06 12:32
13434880
пробовал читать днные с помощью функции GetDataFromBuffer но получалась ахинея отличная от той что я привел в отчете.. |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++У меня виснит GetSyncData и в Data какая-то ахинея.Кто-нибудь знает как читать данные с АЦП |
|||
|
||||
|
Re: L780 - Как подключить библиотеки АЦП в Visual C++читать как в примерах. У точните свой вопрос... |