Subversion Repositories NaviCtrl

Compare Revisions

Ignore whitespace Rev 92 → Rev 93

/trunk/GPS.c
489,7 → 489,7
if((GPS_pWaypoint != GPS_pWaypointOld) || (GPS_pWaypoint->Position.Status == NEWDATA))
{
GPS_pWaypointOld = GPS_pWaypoint;
}
}
// if WP has been reached once, wait hold time before trigger to next one
if(NCFlags & NC_FLAG_TARGET_REACHED)
{
511,7 → 511,7
// update the hold position
GPS_CopyPosition(&(GPSData.Position), &GPS_HoldPosition);
GPS_pTargetPosition = &(GPS_pWaypoint->Position);
GPS_TargetRadius = (u32)(GPS_pWaypoint->ToleranceRadius) * 100L;
GPS_TargetRadius = (u32)(GPS_pWaypoint->ToleranceRadius) * 100L;
 
}
else // no waypoint info available, i.e. the WPList is empty or the end of the list has been reached
604,9 → 604,9
// calculate deviation of current position to ranged target position in cm
if(GPS_CalculateDeviation(&(GPSData.Position), &RangedTargetPosition, &CurrentTargetDeviation))
{ // set target reached flag of we once reached the target point
if(!(NCFlags |= NC_FLAG_TARGET_REACHED) && (CurrentTargetDeviation.Distance < GPS_TargetRadius))
if(!(NCFlags & NC_FLAG_TARGET_REACHED) && (CurrentTargetDeviation.Distance < GPS_TargetRadius))
{
NCFlags |= NC_FLAG_TARGET_REACHED; // set target reached flag
NCFlags |= NC_FLAG_TARGET_REACHED; // set target reached flag
}
// implement your control code here based
// in the info available in the CurrentTargetDeviation, GPSData and FromFlightCtrl.GyroHeading