Subversion Repositories NaviCtrl

Compare Revisions

Ignore whitespace Rev 286 → Rev 287

/trunk/main.h
17,6 → 17,7
// 6 = G
// 7 = H
// 8 = I
// 9 = J
 
#define VERSION_SERIAL_MAJOR 11
#define VERSION_SERIAL_MINOR 0
/trunk/mk3mag.c
261,6 → 261,7
void MK3MAG_UpdateCompass(void)
{
static u32 TimerCompassUpdate = 0;
static s32 x_max,y_max,z_max,x_min,y_min,z_min;
 
if( (I2C_State == I2C_STATE_OFF) || !MK3MAG_Present ) return;
273,7 → 274,23
if(MK3MAG_ReadCal.CalByte != MK3MAG_WriteCal.CalByte)
{
MK3MAG_SendCommand(MK3MAG_CMD_WRITE_CAL);
x_max = -30000; y_max = -30000; z_max = -30000;
x_min = 30000; y_min = 30000; z_min = 30000;
}
if(MK3MAG_WriteCal.CalByte == 2)
{
Compass_UpdateMagVector();
if(MagVector.X > x_max) { x_max = MagVector.X; BeepTime = 30; };
if(MagVector.Y > y_max) { y_max = MagVector.Y; BeepTime = 30; };
if(MagVector.X < x_min) { x_min = MagVector.X; BeepTime = 30; };
if(MagVector.Y < y_min) { y_min = MagVector.Y; BeepTime = 30; };
}
if(MK3MAG_WriteCal.CalByte == 4)
{
Compass_UpdateMagVector();
if(MagVector.Z > z_max) { z_max = MagVector.Z; BeepTime = 30; };
if(MagVector.Z < z_min) { z_min = MagVector.Z; BeepTime = 30; };
}
else // request current heading
{
MK3MAG_SendCommand(MK3MAG_CMD_READ_HEADING);
/trunk/ncmag.c
614,7 → 614,7
u8 msg[64];
static u8 done = 0;
 
if(done) return(1);
if(done) return(1); // just make it once
#define LIMITS(value, min, max) {min = (80 * value)/100; max = (120 * value)/100;}
u32 time;
/trunk/spi_slave.c
432,8 → 432,8
}
Parameter.NaviPH_LoginTime = FromFlightCtrl.Param.Byte[1];
NaviData.Variometer = (NaviData.Variometer + 2 * (FromFlightCtrl.Param.sInt[1] - NaviData.Altimeter)) / 2; // provisorisch
NaviData.Altimeter = FromFlightCtrl.Param.sInt[1]; // is located at byte 2 and 3
NaviData.SetpointAltitude = FromFlightCtrl.Param.sInt[2]; // is located at byte 4 and 5
NaviData.Altimeter = FromFlightCtrl.Param.sInt[1]; // in 5cm
NaviData.SetpointAltitude = FromFlightCtrl.Param.sInt[2]; // in 5cm
CHK_POTI_MM(Parameter.NaviGpsPLimit,FromFlightCtrl.Param.Byte[6],0,255);
CHK_POTI_MM(Parameter.NaviGpsILimit,FromFlightCtrl.Param.Byte[7],0,255);
CHK_POTI_MM(Parameter.NaviGpsDLimit,FromFlightCtrl.Param.Byte[8],0,255);