В работе

Написать программу AVR - БПФ (fft)

Суть задания:

Микроконтроллер - mega8 TQFP

питание - 3,3-5V

Внешний кварц (Частота) - 8 МГц

Связь - I2C аппаратный (в режиме slave)

Опорное напряжение АЦП - внешнее на ногу aref

Сброс настроек на значение по умолчанию - кнопкой

Алгоритм программы:

Выполнить АЦП преобразование одного сигнала (разрядность 10бит), усреднить, далее в зависимости от режима работы: 1й режим - это при запросе от master МК отправить значение АЦП по i2c. 2й режим - выполнить БПФ (быстрое преобразование Фурье) и при запросе от master МК отправить спектр сигнала по i2c.

МК должен иметь возможность настраиваться по i2c от master.

Параметры настраиваемые по i2c master МК-ом:

1) Адрес МК (mega8 slave) в сети i2c. по умолчанию адрес 32

2) Режим работы 1 или 2. По умолчанию 1

3) Количество выборок при усреднении. По умолчанию 10

4) колличество гармоник в спектре: 32, 64, 128. По умолчанию 32. (Спектр симметричный, поэтому, например, при выборе количества гармоник 32 нужно отправлять только положительные 16 гармоник (т.е. шаг спектра при частоте от 0 до 400Гц равен 25Гц) и т.д. для 64 и 128)

5) диапазон частот сигнала, раскладываемого в спектр. По умолчанию от 0 до 400 Гц.

6) скорость i2c, по умолчанию 100 кбит

P/S

Язык программирования не важен: C или Assembler. Если хватит памяти для БПФ на С, то пишите на С если нет, то БПФ можно на assembler.

Если необходимы временные задержки то в программе прошу не использовать функцию delay или аналог а делать на таймерах, т.к. необходима максимальная надежность, стабильность и скорость работы программы.

В результате мне необходимы исходники программы с подробными комментариями, файл прошивки, значение fuse бит, модель в протеус.

Навыки: Программирование на С, x86/x64 Assembler

О клиенте:
( 0 отзыв(-а, -ов) ) Norilsk, Russian Federation

ID проекта: #11513617

Поручен:

SloRez

У меня большой опыт проектирования, программирования AVR,STM32,STM8. Разрабатывал отладочные платы, метеостанции и т.п.

$66 USD за 10 дней(-я)
(0 отзывов(-а))
0.0

2 фрилансеров(-а) готовы выполнить эту работу в среднем за $48

giopld

(((((((((((((((( i can help you very low price Chat me now please now )))))))))))))))))) *************************************************************

$30 USD за 1 день
(0 отзывов(-а))
0.0