jcxz 241 15 октября, 2019 Опубликовано 15 октября, 2019 · Жалоба 7 минут назад, Mysteo сказал: Что-то не пойму почему функция arm_rfft_fast_f32 из библиотеки CMSIS DSP меняет входной буфер float на Cortex-M3??? Вы решили частоту дискретизации не повышать, а наоборот - понизить до герц? И почему она не должна его менять? В объявлении же явно указано "float32_t *". Без const. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_pv 78 15 октября, 2019 Опубликовано 15 октября, 2019 · Жалоба 7 hours ago, Behram said: Повышение частоты дискретизации влечет за собой повышение нагрузки на камень, с чем мелкий арм может не справиться. 100 тактов на отсчёт при 10кгц это целый 1Мгц, тут АВР справится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 15 октября, 2019 Опубликовано 15 октября, 2019 · Жалоба 50 minutes ago, jcxz said: float на Cortex-M3??? Вы решили частоту дискретизации не повышать, а наоборот - понизить до герц? Нет , я сделал частоту дискретизации 6000 Гц и просмотрел успеет ли МК выполнить rfft 256 до прихода новых данных или нет , ещё половину времени простоя осталось Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 15 октября, 2019 Опубликовано 15 октября, 2019 · Жалоба 1 час назад, Mysteo сказал: Нет , я сделал частоту дискретизации 6000 Гц и просмотрел успеет ли МК выполнить rfft 256 до прихода новых данных или нет , ещё половину времени простоя осталось Да хоть мегагерц не проблема если делать не в реальном времени. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба Ну так нужно реальное время )) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 220 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 22 часа назад, Mysteo сказал: последовательность частот, 16 различных частот ... применять FFT ? Или 16 полосовых фильтров городить ? Все 16 гудят одновременно? Если нет, логично сперва подумать об одном компараторе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 8 minutes ago, Plain said: Все 16 гудят одновременно? Нет, только 1 частота может быть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 1 час назад, Mysteo сказал: Ну так нужно реальное время )) Тогда для БПФ пишут не только про частоту выборок, но и про периодичность, с которой выполняется это БПФ. Без этого Ваша запись о 6кГц не несёт никакой полезной информации. 38 минут назад, Mysteo сказал: Нет, только 1 частота может быть. Тогда не нужно 16 полосовых фильтров. Достаточно 4-х ФНЧ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба Что-то не понял как на четырех фильтрах отделить 16 различных частот. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 11 минут назад, Mysteo сказал: Что-то не понял как на четырех фильтрах отделить 16 различных частот. Поставить их последовательно, а не параллельно. И дальше - методом последовательного приближения: Первый фильтр настроен на границу между 7-м и 8-м каналами. По его выходу компаратор решает - есть сигнал или нет. Если есть - идём вниз и прогоняем выходные сэмплы через ФНЧ с граничной частотой между 3-м и 4-м каналами; если нет - идём вверх и прогоняем через ФНЧ для 11-го/12-го канала. И т.д. Всего 4 фильтра. Т.е. - поиск методом последовательного приближения. Т.к. фильтры будут переключаться, то анализ решения компаратора сделать с задержкой, на время установления после переключения фильтра. У Вас же есть какая-то минимальная длительность сигнала? Задержка должна быть меньше её. Или просто каждые 0.5 времени сигнала делать сброс линий задержек всех фильтров. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 16 октября, 2019 Опубликовано 16 октября, 2019 (изменено) · Жалоба Спасибо за идею. Буду пробовать 19 minutes ago, jcxz said: У Вас же есть какая-то минимальная длительность сигнала? Минимальная длительность сигнала , вы тут имеете в виду длительность звучания одной частоты ? или всего сигнала? Минимальная длительность одной частоты 40мс. А сам сигнал разной длительности может быть , в зависимости от того сколько символов кодируется Изменено 16 октября, 2019 пользователем Mysteo Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 220 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 1 час назад, Mysteo сказал: только 1 частота может быть АЦП-то Вам зачем — амплитуды надо измерять? Потому что если просто наличие/отсутствие, то имеет смысл рассмотреть достаточность 1-битного АЦП, т.е. компаратора перехода через ноль или производной, и измерителя полученных полупериодов на защёлке таймера микроконтроллера. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Mysteo 0 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба Можно кстати и через компаратор сделать как вы говорите, так вроде даже проще. А АЦП использую потому что микрофон на АЦП заведен через усилитель на ОУ с частотой среза 8кГц. Можно настроить АЦП как аналоговый компоратор и получится, то что вы говорите... вроде бы Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 241 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 1 час назад, Mysteo сказал: Минимальная длительность сигнала , вы тут имеете в виду длительность звучания одной частоты ? или всего сигнала? Имею в виду её: 1 час назад, Mysteo сказал: Минимальная длительность одной частоты 40мс. 50 минут назад, Mysteo сказал: Можно кстати и через компаратор сделать как вы говорите, так вроде даже проще. Можно, если уровень шумов в сигнале не слишком высокий. Хотя всё равно скорей всего не один период нужно будет измерять, а несколько. И усреднять. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uriy 5 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба Переделайте DTMF декодер на алгоритме герцеля под ваши частоты. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться