|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
E20-10B Linux ADC Input Range
Каким образом можно менять входной диапазон для ADC E20-10B под Linux?
|
|
- Сотрудник "Л Кард"
- Откуда: Москва
- Здесь с 23.04.2014
- Сообщений: 3,727
|
Re: E20-10B Linux ADC Input Range
case E2010B: case E2010: { adcPar.t2.s_Type = L_ADC_PARAM; adcPar.t2.AutoInit = 1; adcPar.t2.dRate = 10000.0; adcPar.t2.dKadr = 0.001; adcPar.t2.SynchroType = 0x01; adcPar.t2.SynchroSrc = 0x00; adcPar.t2.AdcIMask = SIG_0|SIG_1|SIG_2|SIG_3; // << вот тут можно задавать еще и диапазоны в дополнение к признаку, что это сигнал //bit macros for channel input range and mode config, use |/+ operator to configure #define V30_0 0x0000 #define V10_0 0x0008 #define V03_0 0x0010 #define GND_0 0x0000 #define SIG_0 0x0400 #define V30_1 0x0000 #define V10_1 0x0002 #define V03_1 0x0004 #define GND_1 0x0000 #define SIG_1 0x0200 #define V30_2 0x0000 #define V10_2 0x8000 #define V03_2 0x0100 #define GND_2 0x0000 #define SIG_2 0x1000 #define V30_3 0x0000 #define V10_3 0x2000 #define V03_3 0x4000 #define GND_3 0x0000 #define SIG_3 0x0800
|
|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
Re: E20-10B Linux ADC Input Range
|
|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
Re: E20-10B Linux ADC Input Range
Пример подвисает если установить следующие параметры: int multi = 32*10; adcPar.t2.NCh = 1; После сбора 80% данных Немного измененный демо пример: http://www.lcard.ru/forums/img/members/425/main.zip
|
|
- Сотрудник "Л Кард"
- Откуда: Москва
- Здесь с 23.04.2014
- Сообщений: 3,727
|
Re: E20-10B Linux ADC Input Range
А если не менять демо, а только увеличить multi.
|
|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
Re: E20-10B Linux ADC Input Range
На вашем демо, если изменить только: int multi = 32*10; adcPar.t2.NCh = 1; тоже самое. Примерно к концу сбора данных подвисает с выводом на экран: shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 думаю косяк или в дрйвере или в битстриме. так как 32*10*80%=256, что очень подозрительно
|
|
- Сотрудник "Л Кард"
- Откуда: Москва
- Здесь с 23.04.2014
- Сообщений: 3,727
|
Re: E20-10B Linux ADC Input Range
думаю надо или частоту сбора снизить или FIFO и IrqStep увеличить.
|
|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
Re: E20-10B Linux ADC Input Range
Poul пишет:думаю надо или частоту сбора снизить или FIFO и IrqStep увеличить.
При изменении: adcPar.t2.dRate = 1000.0; тоже самое. (От частоты сбора не зависит). Я брал с вашего сайта архив http://www.lcard.ru/download/lcomp_linux.tgz.
|
|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
Re: E20-10B Linux ADC Input Range
При adcPar.t2.dKadr = 0.01; тоже подвисает к концу сбора данных. Операционная система ubuntu 18.04
|
|
- Сотрудник "Л Кард"
- Откуда: Москва
- Здесь с 23.04.2014
- Сообщений: 3,727
|
Re: E20-10B Linux ADC Input Range
а если цикл в треде сделать бесконечным и убрать запись в файл? или тред вообще убрать и оставить только чтение каунтера в теле программы
|
|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
Re: E20-10B Linux ADC Input Range
Если убрать тред, то тоже самое: shared word 8000 0 shared word 10000 0 shared word 20000 0 shared word 8000 0 shared word 10000 0 shared word 18000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0 shared word 20000 0
|
|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
Re: E20-10B Linux ADC Input Range
На другом компьютере c Debian Strech 9.2: $ uname -a
Linux qoo 4.9.0-4-amd64 #1 SMP Debian 4.9.51-1 (2017-09-28) x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 9.2 (stretch)
Release: 9.2
Codename: stretch
тоже самая ошибка. Пожалуйста проверьте эту ошибку со своей стороны.
|
|
- Сотрудник "Л Кард"
- Откуда: Москва
- Здесь с 23.04.2014
- Сообщений: 3,727
|
Re: E20-10B Linux ADC Input Range
Проверил. Да есть такой глюк. Походу он из-за старой прошивки, которая в дистрибутиве лежит. На почту послал последнюю. Дистрибутивы сейчас обновлю.
|
|
- Участник
- Здесь с 10.10.2018
- Сообщений: 9
|
Re: E20-10B Linux ADC Input Range
|