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


Как работают функции в асинхронном режиме?

Вы не вошли.

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

Vit
11.05.2009 15:38:51
#1

Гость

Как работают функции в асинхронном режиме?

Просьба разъяснить подробнее механизм работы функций ReadData и WriteData в асинхронном режиме для модуля Е14-440.

Допустим по ReadData. Например, FIFO буфер длиной 100 слов, т.е. передача из модуля в ПК происходит по 50 слов. А в приложении имеется буфер ReadBuffer длиной 150 слов, и его можно заполнять по половинке, т.е. по 75 слов. Это же значение 75 слов стоит параметром NumberOfWordsToPass функции ReadData. И тогда получается, что функция ждет, пока не наберется 75 слов. Т.е. она ждет наполнения условно первой половины FIFO буфера, получает 50 слов, а потом ждет второй половины FIFO буфера, но из нее берет уже только 25 слов. А остальные 25, которые модуль отправляет в ПК, "ждут" своей очереди, пока не будет выставлен новый асинхронный запрос.

Вопрос: 1. Насколько правильное у меня понимание процесса? 2. А где тогда "ждут" 25 слов, которые не прошли из модуля в компьютер?

12.05.2009 11:51:37
#2

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

Re: Как работают функции в асинхронном режиме?

Всё правильно. Только размер FIFO буфера АЦП в DSP модуля может принимать значения только кратные 64. А "остальные xx" отсчётов ждут своего часа в FIFO буфере АЦП в DSP модуля.