[an error occurred while processing this directive]
|
Времени мало, а 55xx для меня новый процессор, поэтому проект в основном на C + DSPLib. Творение гениев из техаса начало доставать. Sin 45g у них -1. (при этом процедура sin честно сообшает об преполнении). Хорошо, я с этим понятно, в Q15 нет 1. Тогда почему Sin -45 равен 0.99xxx? (7fff в Q15)? На какой ... нужна процедура правильно считающая синус для всех Phase, кроме 45 и -45?
Некоторые функции выдают такую лажу, что волосы дыбом встают. Например firinterp вдруг заканчивает правильно считать последи буффера и начинает гнать некий непонятный шум. В общем - шаг влево, шаг вправо и начинаются приключения.
Я сейчас стараюсь использовать только "проверенные" функции, которые пока не показали себя с плохой стороны: fir, fir2, cfft, cifft. Фурье иногда пургу гонит с включенным SCALE, но тут уж деваться некуда. В общем - DSPLib - это конструктор по принципу - доделай сам, благо исходные тексты доступны.
E-mail: info@telesys.ru