Subversion Repositories FlightCtrl

Compare Revisions

Ignore whitespace Rev 254 → Rev 255

/branches/v0.60_MicroMag3_Nick666/compass.c
110,18 → 110,17
signed int x_corr, y_corr;
signed int heading;
//Berechung von sinus und cosinus
// Berechung von sinus und cosinus
sin_nick = sin_f(MM3.NickGrad);
cos_nick = cos_f(MM3.NickGrad);
sin_roll = sin_f(MM3.RollGrad);
cos_roll = cos_f(MM3.RollGrad);
//Neigungskompensation
//x_corr = (((sin_roll * MM3.y_axis) - (cos_roll * MM3.z_axis)) * sin_nick) + (cos_nick * MM3.x_axis);
x_corr = (cos_nick * MM3.x_axis) + (sin_roll * MM3.y_axis* sin_nick) - (cos_roll * MM3.z_axis * sin_nick);
// Neigungskompensation
x_corr = (cos_nick * MM3.x_axis) + (((sin_roll * MM3.y_axis) - (cos_roll * MM3.z_axis)) * sin_nick);
y_corr = ((cos_roll * MM3.y_axis) + (sin_roll * MM3.z_axis));
//Winkelberechnung
// Winkelberechnung
heading = arctan_i(x_corr, y_corr);
 
return (heading);