Страница 1 из 1

DSPL 2.0

Добавлено: 15 май 2019, 16:51
Сергей
Здравствуйте, огромная благодарность за такой титанический труд :!:
Скачал с GitHub'a libdspl-2.0, а папку test не нахожу. Да и не совсем понятно как пользоваться продуктом (как, например, подать на вход БПФ массив и получить реакцию библиотеки в виде массива или графика ?)

Re: DSPL 2.0

Добавлено: 16 май 2019, 08:54
Бахурин Сергей
Сорри test переименован в examples. Исходные коды в examples/src
Если вы скомпилировали проект, то в examples/bin будут exe файлы примеров, которые соответствуют исходника. Вы можете посмотреть examples/src/fft_test.c и examples/src/fft_cmplx_test.c для вещественного и комплексного входного массива. В examples/bin после компиляции будут ехе которые можно запустить и получить результат fft.

Соответственно надо подключить библиотеку к вашему проекту путем динамической линковки dll и менять входные массивы. В примерах так и делается.

Re: DSPL 2.0

Добавлено: 16 май 2019, 09:28
Сергей
Вроде бы вчера все папки пересмотрел после компиляции, но *.exe так и не увидел. Спасибо за Ваш ответ, буду искать ошибку у себя.

Re: DSPL 2.0

Добавлено: 16 май 2019, 09:57
Бахурин Сергей
А libdspl.dll есть в папках bin?

Re: DSPL 2.0

Добавлено: 16 май 2019, 14:36
Сергей
Бахурин Сергей писал(а):
16 май 2019, 09:57
А libdspl.dll есть в папках bin?
Да, появился. Неправильно указал путь в переменной для Unix-утилит.

Re: DSPL 2.0

Добавлено: 16 май 2019, 16:29
Бахурин Сергей
Хотелось бы получить некоторую обратную связь от практического использования:
Какие функции хотелось бы добавить?
Производительность устраивает или нужно ускорять некоторые функции?
Какая документация требует доработки?
Какие примеры надо добавить?

Re: DSPL 2.0

Добавлено: 16 май 2019, 20:27
Сергей
Я только начинающий в этом деле и решил теорию (о базовых алгоритмах ЦОС) подкрепить практикой,так сказать, программно-аппаратным способом "потрогать руками", по-этому трудно без представления в целом об этой области мне сказать каких функций не хватает (интересно бы было почитать статьи про цифровые частотные преобразования DDC и DDS (хорошо бы смотрелось в статье про квадратурный гетеродин)). Касаемо железа - не думаю, что на первых парах буду обрабатывать объемные по количеству выборок массивы, необходимо в целом разобраться. В части документации и примеров, как мне кажется все ограничивается фантазией и Вашим усмотрением: от азов "как подтянуть на вход фильтра или БПФ свой массив выборок (не важно откуда - Excel, Matlab и т.д.) и что с ним делать дальше" до некого конструктора из функций, чтобы обрабатывать, например, реальные сигналы с того же SDR, но опять же повторюсь - всё на усмотрение автора, т.к. прекрасно понимаю, что это огромное личное время.
Вообще хочется, чтобы область цифры развивалась, сейчас она везде всплывает. Буду разбираться, возникнут вопросы или предложения, то обязательно отпишусь.

Re: DSPL 2.0

Добавлено: 19 май 2019, 09:11
Сергей
Здравствуйте, чуть-чуть поразбирался в библиотеке и возникло 2 вопроса:
1) После выполнения программы, например, dft_test.exe, результаты работы не должны сохраняться в *.txt в папке libdspl-2.0\examples\bin\dat ?
2) После выполнения любого exe-файла, окно с результатом моментально закрывается, так и должно быть ?

Или же это снова у меня косяки...

Re: DSPL 2.0

Добавлено: 19 май 2019, 10:33
kaa
1) в dft_test.cpp в вункции main есть вызов printf, результаты выводятся в консоль, видимо

2) можно использовать far, находите нужный .exe, выполняете, нажав Enter и после переходите в консоль нажатием Ctrl+O, там будет вывод исполненной программы

Re: DSPL 2.0

Добавлено: 20 май 2019, 12:27
Бахурин Сергей
Сергей писал(а):
19 май 2019, 09:11
Здравствуйте, чуть-чуть поразбирался в библиотеке и возникло 2 вопроса:
1) После выполнения программы, например, dft_test.exe, результаты работы не должны сохраняться в *.txt в папке libdspl-2.0\examples\bin\dat ?
2) После выполнения любого exe-файла, окно с результатом моментально закрывается, так и должно быть ?

Или же это снова у меня косяки...
Нет у вас все правильно. Чтобы окна не закрывались добавьте

Код: Выделить всё

system("pause") ;
Перед выходом из программы.