Анализ спектра методом дискретного преобразования Фурье (161)
Анализ спектра периодической функции на МК-161 методом дискретного преобразования Фурье. Ссылка
File attachments:
Attachment | Size |
---|---|
![]() | 201 bytes |
- Электромонтёр's blog
- Log in or register to post comments
- 5703 reads
Comments
И для МК61?
Permalink
Навскидку не нашел в вашей программе ничего специфичного для 161, возможно, она пойдет и на старых моделях и эмуляторах. Если будет время, проверьте на нашем эмуляторе.
К сожалению, нет
Permalink
Программа использует десятичные регистры для хранения отсчётов, хоть и занимает всего одну страницу памяти, но на МК-61 не будет работать из-за нехватки регистров.
В справочнике Дьяконова были варианты программ ДПФ но они требовали либо последовательного ввода всех отсчётов для вычисления каждой гармоники спектра из-за ограниченного числа регистров, либо максимума в 11 отсчётов, это, на мой взгляд довольно неудобно.
МК-161 имеет 1000 десятичных регистров и позволяет размещать в памяти массивы до 985 отсчётов, остаётся ввести отсчёты в память, запустить программу и получить результаты. Кстати, программу можно использовать для анализа спектра по отсчётам, заранее записанным в память, начиная с 15-го регистра, при этом в регистр Р7 нужно записать количество отсчётов и запустить программу с адреса 15.
Существует эмулятор ЭКВМ, обнаруженные баги исправляются буквально за считанные дни.
Сайт
Глядя на
Permalink
Глядя на название темы, я подумал, что речь идёт об оцифровке сигнала с АЦП МК161 и последующем БПФ :)
---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/
До БПФ ещё далеко :)
Permalink
Это тоже возможно, но, к сожалению, мне не совсем ясно как работает БПФ. Сейчас почитываю статейки на эту тему. Программу составлял по формулам из справочника Дьяконова.
Если программку переработать под анализ спектра оцифрованного массива с АЦП, то рассчитывать спектр из 256 отсчётов она будет очень медленно :(
Сайт
я когда-то на
Permalink
я когда-то на микрочиповском микроконтроллере с подцепленной 2Кб статическим ОЗУ делал преобразование Хартли, в качестве практики. Считал спектр оцифрованного звукового сигнала. Медленно, конечно, но считало.
---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/
Я тоже на серии
Permalink
Я тоже на серии PIC24 реализовал когда-то на ассемблере БПФ на 64 точки в реально работающем изделии. Считал 460 мкс на скорости 16 MIPS
Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G
460 мкс -
Permalink
460 мкс - впечатляет!
---------------------------
Истина где-то рядом
www.litres.ru/vitaliy-samurov/dozvonitsya-do-devy/
Пришлось
Permalink
Пришлось переписать на ассемблер, поскольку на ANSI C микроконтроллер при максимальной оптимизации по скорости считал БПФ 2.4 мс, а по ТЗ требовалась скорость модуляции 1000 бод. Да и в нём нет дополнительного набора команд для цифровой обработки сигналов. Со спец. командами в сигнальном процессоре можно ещё быстрее, но чип будет на порядок дороже.
Мои программируемые калькуляторы:
Б3-21, Б3-34, МК-61, МК-52, МК-85
CASIO: cfx-9850GB+, fx-9750G+, fx-9750GII, fx-9860G, Algebra fx-2.0, fx-5800P, fx-7400G+
HP: 50G, 48G, 35s
TI: Nspire-CAS, Voyage-200, 89Titanium
SHARP EL-9600G