|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
17.12.2012, 00:38 | #1 |
Новичок
Джуниор
Регистрация: 17.12.2012
Сообщений: 2
|
написать программку генерации прямоугольного импульса в звуковом диапазоне через звуковую карту
Добрый день.
Я радиолюбитель и уже не в первый раз понадобилось иметь возможность снять со звуковой карты прямоугольный импульс в звуковом диапазоне. Проблема в том, что импульс нужен либо один, либо определенное количество и при этом длительность импульса должна задавать определенной длинны. Я уверен, что многим радиолюбителям пригодится данная программа. Так примерно должна выглядеть программа: Картинка импульса Плиз, помогите ее написать? Сам я не очень понимаю как это сделать и на каком языке это лучше написать. |
17.12.2012, 10:49 | #2 |
Участник клуба
Регистрация: 07.12.2011
Сообщений: 1,025
|
например так (только там синусоида)...
http://www.programmersforum.ru/showthread.php?t=200291
Не стесняемся, плюсуем!
|
22.12.2012, 12:26 | #3 |
Заблокирован
Регистрация: 27.08.2010
Сообщений: 37
|
Писать можно на любом языке. Это не суть важно. Пора бы понять, что работает алгоритм. а не язык программирования. А что до этой программы, то самое простое - реализовать всё это дерект соунд или библиотеке бас или, попросту синтезировать звуковой поток и прокручиваь его заданное число раз через плеер, котрый можно встроить в саму программу. Что такое звуковой файл? Это просто поток уровней. В данном случае. лучше взять формат с 8 битовым семплом. тогда 127 - это ноль 255 - это еденица.
Теперь, задём так называемый битрейт. А через него вычисляем, сколько семлов нужно для реализации импульса. Ну скажем если битрейт 50 000, (макс частота 25 кгц), то вычисляем минимальную длительность импульса. 1/50 000 сек. Ну, потом задаём длительнось нужного импульса. делим его на эту величину и получам, сколько байт занимает импульс. Ну если взять длину звукового блока по величине битрейта, , И только самый первый заменить на 255. а остальные оставить 127, при циклическом воспроизведении будет воспроизводится импульс длительнестью 1/50 000 с частотой в 1 гц. Если длину буфера разделим на 2, то частоа будет уже 2 гц. Вот так частоту можно менять длиной буфера, а время импульса, количеством байт со значением 255. Но тут нужно учитывать характеристики звуковой платы. не все они поддерживают нестандартные битрейты Последний раз редактировалось leoparrd; 22.12.2012 в 12:28. |
22.12.2012, 21:28 | #4 | |
Форумчанин
Регистрация: 11.04.2012
Сообщений: 212
|
Цитата:
|
|
22.12.2012, 21:36 | #5 |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
...а ему и не надо, там в гаджете компаратор будет.
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
22.12.2012, 22:32 | #6 |
Форумчанин
Регистрация: 11.04.2012
Сообщений: 212
|
Проще уж подпаяться к выходу каналу таймера, выведенного на сист.спикер, и управлять каналом через любой подходящий готовый драйвер режима ядра.
|
23.12.2012, 12:12 | #7 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
Вы хотите написать сами или взять уже готовое?
Если второе, то наберите в Гугле "программный генератор сигналов", если сами - считаю полезным заметить, что Вы очень сильно сужаете как задачу, так и, следовательно, возможности программы, т.к. если добавить к реализации, минимум: 1. Управление амплитудой сигнала. 2. Выбор формы сигнала. 3. Модуляцию одного сигнала другим. 4. Коль скоро у звуковой карты стереовыход, хорошо бы формировать одновременно два сигнала, которыми можно управлять независимо. И при этом сложность программы практически не изменится. По поводу совета leoparrd: если ориентироваться исключительно на прямоугольный сигнал, то его выбор 8-разрядного представления можно считать приемлемым, но при расширении возможностей это окажется препятствием. Поэтому разрядность сигнала лучше сразу принять равной 16. |
23.12.2012, 13:01 | #8 | |
Старожил
Регистрация: 29.09.2009
Сообщений: 9,713
|
Цитата:
Замечу, что при наличии компаратора после аудиокарты и перед MOSFET/IGBT в ключевом режиме, лучше как раз синусоидальный сигнал
Разработки и научно-технические публикации :: Видеоблог :: Твиттер
Radar systems engineer & Software developer of industrial automation |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Найдите все возможные целые значения длин сторон прямоугольного треугольника в диапазоне от 1 до N (Delphi | Fon | Помощь студентам | 5 | 25.10.2012 11:50 |
Вывод на звуковую карту. | юрий петрович | Win Api | 0 | 19.09.2011 20:55 |
Как настроить звуковую карту? | Hardander | Компьютерное железо | 3 | 30.04.2010 20:50 |
New Audio Component и аудио поток идущий на звуковую карту | Timoffei | Мультимедиа в Delphi | 2 | 20.04.2009 17:39 |
через какую сетевую карту входить в инет, а через какую в лан | шКОЛЯР | Свободное общение | 2 | 27.06.2008 17:55 |