Модуль math для AVR32

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Ледокот
Открыл глаза
Сообщения: 71
Зарегистрирован: Пт апр 22, 2011 18:41:48
Контактная информация:

Модуль math для AVR32

Сообщение Ледокот »

Всем здравствуйте :)
Скачал AVR Studio 5, пытаюсь на 32-разрядной архитектуре скомпилировать и отладить (для проверки количества тактов выполнения) следующий код:

Код: Выделить всё

#include <avr32/io.h>
#include <math.h>
double x11 = 0;
double x21 = 0;
double T=0.1;
double K=10;
double ksi=0.2;
double dt = 0.00001;
double A11, A12, A21, A22, B11, B21, C11, C12, g, y;
void main (void) {
double u = -ksi/T;
double v = sqrt (1-ksi*ksi)/T;
double eudt = exp ( u * dt );
double vdt = v * dt;
double cosvdt = cos (vdt);
double sinvdt = sin (vdt );
double keudt = K * eudt;
double vsinvdt = v * sinvdt;
double usinvdt = u * sinvdt;
double vcosvdt = v * cosvdt;
double ucosvdt = u * cosvdt;
 A11 = eudt*(vcosvdt - usinvdt)/v;
 A12 = eudt*sinvdt/v;
 A21 = -eudt*sinvdt*(u*u+v*v)/v;
 A22 = eudt*(u*sin(vdt)+v*cos(vdt))/v;
 B11 = -keudt*cos(vdt)+K+keudt*u*sin(vdt)/v;
 B21 = keudt*u*sin(vdt)*u/v+keudt*v*sin(vdt);
 C11 = 1;
 C12 = 0;
 g = 1;
 x11 = A11*x11+A12*x21+B11*g;
 x21 = A21*x11+A22*x21+B21*g;
 y = C11*x11+C12*x21;
}
Но среда ругается на функции exp, sin, cos, sqrt... Говорит что undefined reference /И ничего не работает. 4-я студия тоже есть, но на ней кажется с 32-разрядными контроллерами работать не получается, вернее, не получается эмулировать их работу.
Если я где-то ошибаюсь, прошу от меня этого не скрывать. Заранее очень признателен :)
Реклама
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»