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


LTR43 программирование

Вы не вошли.

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

Татьяна
12.07.2013 13:43:31
#1

Гость

LTR43 программирование

Как в LTR43 отправить и считать поток данных? При отправке массива из 6 значений считывается только последнее? как получить остальные?

12.07.2013 14:22:47
#2

Сотрудник "Л Кард"
Здесь с 17.04.2014
Сообщений: 1,338

Re: LTR43 программирование

Если Вы передаете массив данных, то соответственно они последовательно выведутся сперва первое, затем второе и т.д. (через некоторый промежуток времени, который может плавать, так как LTR43 строго синхронного вывода нет). Соответственно, после завершения вывода массива останется последнее значение и при последующем вводе Вы его и считаете.

А можно поподробнее - какую задачу Вы решаете? А то в такой формулировке я не до конца понимаю ее смысл.

Татьяна
12.07.2013 14:32:33
#3

Гость

Re: LTR43 программирование

Мне нужно подать на LTR43 не одно слово а поток. я его подаю как массив из 5 значений LTR43_WriteArray(&hltr43,Array,5);
я туда подала данные, а при считывании у меня получается, что считывает только последнее значение, а другие я так понимаю уже затерлись, т.е. в тот момент когда я начинаю считывать запись вся прошла и остается последнее значение. Как мне можно сделать, чтобы я одновременно могла подать и тут же считать все поданные значения?

Татьяна
12.07.2013 14:34:38
#4

Гость

Re: LTR43 программирование

Считываю данные путем LTR43_StartStreamRead(&hltr43);
size=1000;
LTR43_Recv(&hltr43, SourceArray,NULL,size,2000); LTR43_ProcessData(&hltr43,SourceArray,DestArray,&size);
в итоге в массиве DestArray у меня 500 значений одинаковых(последнее значение поданное)

Татьяна
12.07.2013 14:38:43
#5

Гость

Re: LTR43 программирование

И еще у меня такой вопрос. Вот у меня 2 порт настроен на вход, 3 на выход, другие два неважно. можно ли подать например на IO19 единицу, и потом получить ее на IO11?

12.07.2013 15:29:23
#6

Сотрудник "Л Кард"
Здесь с 17.04.2014
Сообщений: 1,338

Re: LTR43 программирование

По поводу IO19 и IO11 - если вы физически соедините выход IO19 со входом IO11 на разъеме модуля - то да.

По поводу одновременно чтения и выдачи массива. Теоретически для этого надо было бы запустить потоковый сбор LTR43_StartStreamRead, затем вывести массив, затем принимать, но текущая прошивка LTR43 не позволяет делать вывод на фоне запущенного потокового сбора…
Поэтому сейчас только можно вывести значение, потом считать, потом вывести следующее и т.д. Такой режим наиболее подходит для LTR43, так как он предназначен для асинхронного (а не синхронного) ввода/вывода.

Теоретически, конечно, можно добавить подобную возможность в прошивку LTR43… Правда опять же нужно понимать, что моменты считывания и вывода не будут синхронными (т.е. явного соответствия один выведенный отсчет – один введенный в любом случае не будет)… Но все хотелось бы понять зачем вам это нужно, ведь описанная задача не является самоцелью. Мне пока сложно понять для чего Вам это нужно.

Татьяна
12.07.2013 15:50:08
#7

Гость

Re: LTR43 программирование

Спасибо вам огромное)))
Мне нужно,что бы с одного устройства подавался сигнал, и через какое-то время он передавался на другое устройство.

12.07.2013 15:57:07
#8

Сотрудник "Л Кард"
Здесь с 17.04.2014
Сообщений: 1,338

Re: LTR43 программирование

Ну если Вы поподробнее расскажете, что это за устройства и что за сигналы (или данные) нужно передавать, то тогда мы возможно сможем чем-нибудь помочь))

Татьяна
18.07.2013 07:59:50
#9

Гость

Re: LTR43 программирование

Мне необходимо данные сигналов одного устройства передать в LTR43, а там посмотреть что за поток данных он выдает.

18.07.2013 11:05:48
#10

Сотрудник "Л Кард"
Здесь с 17.04.2014
Сообщений: 1,338

Re: LTR43 программирование

А про это само другое устройство то что-нибудь известно? А то вариантов как передаются данные может быть много.

С помощью LTR43_StartStreamRead() и последующих LTR43_Recv()/LTR43_ProcessData() Вы получите при желании массив, содержащий состояния входных линий в разные моменты времени, а вот как это интерпретировать будет уже зависеть от интерфейса (протокола) этого другого устройства…

Ну и отдельно вопрос, должен ли сам LTR43 управлять этим устройтсвом (т.е. будет работать только на ввод или еще и на вывод)