Выход и приём звуковухи в одном цикле
- Иван2019
- beginner
- Сообщения: 14
- Зарегистрирован: 14 сен 2018, 16:50
- Версия LabVIEW: 16
- Контактная информация:
Выход и приём звуковухи в одном цикле
Всем привет! У меня есть программа в которой в одном файле собран генератор и анализатор сигнала(типа осциллографа). Задействованы выход и вход звуковой карты ПК. Для этого были открыты два цикла. А можно ли все это в одном цикле собрать и если да, то как??? когда я их тупо сбрасываю в один цикл, получается на осциллографе обрезанная синусоида.. что делать? фото ошибки и файл vi прикрепил.
- Вложения
-
- Двухканальный генератор.vi
- vi файл
- (121.9 КБ) 69 скачиваний
-
- professor
- Сообщения: 3404
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 174 раза
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
частоты различаются примерно в 2 раза, вот выдача половину времени и простаивает.
- Иван2019
- beginner
- Сообщения: 14
- Зарегистрирован: 14 сен 2018, 16:50
- Версия LabVIEW: 16
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
Тоже не получается. Картина немного на осциллографе меняется, но тоже ни чего хорошего..
-
- professor
- Сообщения: 3404
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 174 раза
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
Вы бы перестали шифроваться и кинули весь ваш неработающий код, нам сразу стало бы проще найти там ошибку.
- Иван2019
- beginner
- Сообщения: 14
- Зарегистрирован: 14 сен 2018, 16:50
- Версия LabVIEW: 16
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
Ну пожалуйста! два файла прикрепил. 1-рабочий, но в двух циклах. 2- файл, там где я сбросил все в один цикл. Ну и та же проблема. осциллограф выдает фигню..
- Вложения
-
- Двухканальный генератор.vi
- рабочий
- (121.9 КБ) 96 скачиваний
-
- Двухканальный генератор один цикл.vi
- все в одном цикле...
- (120.8 КБ) 81 скачивание
-
- professor
- Сообщения: 3404
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 174 раза
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
генератор у вас настроен на 10 Гц, а чтение пытается реже.
- Иван2019
- beginner
- Сообщения: 14
- Зарегистрирован: 14 сен 2018, 16:50
- Версия LabVIEW: 16
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
Artem.spb,
А можно по подробнее, пожалуйста.. Ну у меня генератор должен работать не только на 10 Гц , как быть с одним циклом тогда?
А можно по подробнее, пожалуйста.. Ну у меня генератор должен работать не только на 10 Гц , как быть с одним циклом тогда?
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
А с чем связана необходимость внести всё в один цикл? Обычно наоборот поступают.
- Иван2019
- beginner
- Сообщения: 14
- Зарегистрирован: 14 сен 2018, 16:50
- Версия LabVIEW: 16
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
dadreamer,
Просто в дальнейшем мне нужно отправлять данные с одного цикла в другой. Использование Local Variable немного с запозданием передаёт, и вообще от этой переменной хотелось бы уйти .
Кстати с выставлением значений 3 частот указанных выше, в одном цикле все же заработала программа, но ООООООооочень медленно ...
Просто в дальнейшем мне нужно отправлять данные с одного цикла в другой. Использование Local Variable немного с запозданием передаёт, и вообще от этой переменной хотелось бы уйти .
Кстати с выставлением значений 3 частот указанных выше, в одном цикле все же заработала программа, но ООООООооочень медленно ...
-
dadreamer
- professor
- Сообщения: 3926
- Зарегистрирован: 17 фев 2013, 16:33
- Награды: 4
- Версия LabVIEW: 2.5 — 2022
- Благодарил (а): 11 раз
- Поблагодарили: 127 раз
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
Для этих целей есть замечательная палитра Synchronization, где содержится множество для коммуникации между параллельными циклами. Например, очереди или уведомители.Иван2019 писал(а):dadreamer,
Просто в дальнейшем мне нужно отправлять данные с одного цикла в другой. Использование Local Variable немного с запозданием передаёт, и вообще от этой переменной хотелось бы уйти .
dadreamer писал(а):В интернете полно примеров по передаче данных между параллельными циклами. Изучите, как работают механизмы синхронизации, на примере http://www.ni.com/white-paper/3023/en/ (подход "Producer - Consumer"). Посмотрите схожие темы на форуме, например http://www.labviewportal.org/viewtopic. ... 096#p66096 , http://www.labviewportal.org/viewtopic. ... 893#p68893 , http://www.labviewportal.org/viewtopic. ... 28&#p62828dadreamer писал(а):Синхронизировать циклы можно через очереди, уведомители и прочие инструменты.
А также вот вам литература и примеры:
1) "LabVIEW Основы II: Разработка" : шаблон «Производитель-потребитель» + материал в главе 2 "Передача данных между несколькими циклами"
2) Питер Блюм "LabVIEW: стиль программирования", в частности глава 8 "Шаблоны" и раздел 8.3.1 "Параллельные циклы"
3) примеры в папке C:\Program Files (x86)\National Instruments\LabVIEW 2014\examples\Synchronization
- Иван2019
- beginner
- Сообщения: 14
- Зарегистрирован: 14 сен 2018, 16:50
- Версия LabVIEW: 16
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
dadreamer,
Спасибо конечно. но пока задача все же в один цикл сбросить
Спасибо конечно. но пока задача все же в один цикл сбросить
-
- professor
- Сообщения: 3404
- Зарегистрирован: 31 июл 2011, 23:05
- Награды: 2
- Версия LabVIEW: 12-18
- Благодарил (а): 49 раз
- Поблагодарили: 174 раза
- Контактная информация:
Re: Выход и приём звуковухи в одном цикле
не важно, сколько Гц. Важно, чтобы длины массивов совпадали.Иван2019 писал(а):Artem.spb,
А можно по подробнее, пожалуйста.. Ну у меня генератор должен работать не только на 10 Гц , как быть с одним циклом тогда?
Если 10Гц, то оба 4410 при такой частоте дискретизации. Генератору волны надо заказать другое число отсчётов, или со свуковухи читать не 4410, а 5К
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
- 2 Ответы
- 549 Просмотры
-
Последнее сообщение Юрий