реклама на сайте
подробности

 
 
> Простые вопросы по FFT, Реализация на микроконтроллерах без плавающей точки.
JohnKorsh
сообщение Mar 5 2012, 14:01
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 182
Регистрация: 6-01-05
Из: Россия, Москва
Пользователь №: 1 820



Добрый день | вечер | утро! Не поможет ли кто понять простые вопросы по FFT. Пытаюсь сделать FFT для MSP430. Для начала написал на C простое FT, затем, FFT. Сравнил результаты. Совпадают. Пытаюсь перевести в MSP430 без переменных типа float. (Побыстрее, думаю, будет). Не могу понять простую вещь: чтобы использовать поворотные множители создал массив. Пока он на C в виде float (cos и sin (2*Pi*k/N)) - всё нормально, но если попытаться умножить на константу (для того, чтобы перевести cos и sin в значения int - больше единицы) FT продолжает работать исправно (с ростом амплитуды на выходе), а FFT - распадается - появляются новые гармоники. Наверное так не должно быть, ведь FFT это лишь способ считать, или я не прав?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
JohnKorsh
сообщение Mar 16 2012, 07:29
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 182
Регистрация: 6-01-05
Из: Россия, Москва
Пользователь №: 1 820



Добрый день!
Вот очередной работающий вариант программы исследования преобразования Фурье.
Может, кому пригодится. Если понадобится исходник - напишите. Не кладу, просто, чтобы не загромождать сайт (CBuilder6).
Пока остался непонятым вопрос о соотношении сигнал/шум. При увеличении числа точек
соотношение сигнал/шум растёт не как корень из полосы сигнала к пjлосе разрешения преобразования, а гораздо медленнее.
Ошибки предыдущих вариантов были в неправильном использовании целочисленной арифметики. (Ошибки округления и, даже, переполнения.)
FFT написано так, как его видит MSP430 - 16-битная целочисленная арифметика, входной сигнал - 12 бит.
Кто заинтересуется - первые две закладки - имитация сигнала.
Вторые две закладки - работа с реальным сигналом со входа Sound Blaster-a.
Пятая закладка - не по делу - дальнейшие исследования.
Амплитуда должна быть не менее 200 милливольт. (Посмотрите на закладке, как рисуется сигнал).
Диапазон 3500-4500 Гц (По условиям моей задачи). При работе с реальным сигналом при увеличении
частоты максимальная составляющая спектра ползёт в сторону уменьшения - эффект от децимации.
Программа выдаёт файл отчёта и файл с перестановочным массивом и поворотными
множителями для выбранного количества точек.
Прикрепленные файлы
Прикрепленный файл  S_Ft.rar ( 383.97 килобайт ) Кол-во скачиваний: 43
 
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- JohnKorsh   Простые вопросы по FFT   Mar 5 2012, 14:01
- - fontp   QUOTE (JohnKorsh @ Mar 5 2012, 17:01) Доб...   Mar 5 2012, 14:52
- - Alex11   Опять же переполнение надо смотреть.   Mar 5 2012, 16:56
- - DRUID3   ...результат каждого умножения сдвигать на "ч...   Mar 5 2012, 17:46
- - alex_os   Цитата(JohnKorsh @ Mar 5 2012, 17:01) Доб...   Mar 6 2012, 20:47
- - JohnKorsh   Пока непонятно. Для уверенности в правильности реа...   Mar 7 2012, 06:03
- - DRUID3   ...это что за "троян"?   Mar 7 2012, 11:59
- - JohnKorsh   Извините, не проверял, может, где и "подцепил...   Mar 7 2012, 13:04
- - DRUID3   Та не... это я так ...просто у меня и Wine нет, ...   Mar 7 2012, 13:19
- - JohnKorsh   Вот скриншоты. Моё понимание пока на том же уровне...   Mar 10 2012, 11:52
- - JohnKorsh   Вот скриншоты. Моё понимание пока на том же уровне...   Mar 10 2012, 11:52
|- - SPACUM   Цитата(JohnKorsh @ Mar 10 2012, 15:52) Во...   Mar 10 2012, 14:34
- - JohnKorsh   Добрый день! Ещё вопрос. Как я говорил - при п...   Mar 11 2012, 08:30
|- - fontp   QUOTE (JohnKorsh @ Mar 11 2012, 11:30) До...   Mar 11 2012, 11:23
- - JohnKorsh   Спасибо.   Mar 11 2012, 12:37
- - DRUID3   Нужно будет свое тоже опубликовать... я 3 года наз...   Mar 16 2012, 07:41
- - JohnKorsh   Добрый день! Выкладываю программку, немного об...   Mar 27 2013, 14:02


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd June 2025 - 15:49
Рейтинг@Mail.ru


Страница сгенерированна за 0.01396 секунд с 7
ELECTRONIX ©2004-2016