Subversion Repositories NaviCtrl

Rev

Rev 556 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
1 ingob 1
#ifndef __GPS_H
2
#define __GPS_H
3
 
556 holgerb 4
#define SIMULATION_ACTIVE               0x01
5
#define SIMULATION_MOTOR_ON     0x02
6
#define SIMULATION_MOTOR_START  0x80
7
 
215 killagreg 8
#include "ubx.h"
41 ingob 9
#include "waypoints.h"
1 ingob 10
 
41 ingob 11
typedef struct
1 ingob 12
{
41 ingob 13
        s16 Nick;
14
        s16 Roll;
419 holgerb 15
//      s16 Yaw;
41 ingob 16
}  __attribute__((packed)) GPS_Stick_t;
1 ingob 17
 
280 killagreg 18
#define CAM_UPDATE_AZIMUTH              0x01
19
#define CAM_UPDATE_ELEVATION    0x02
278 killagreg 20
typedef struct
21
{
499 killagreg 22
        s16 Azimuth;            // angle in 1 deg measured clockwise from north
23
        s16 Elevation;          // angle in 0.1 deg measured upwards from horizont
280 killagreg 24
        u8 UpdateMask;
278 killagreg 25
} __attribute__((packed)) CAM_Orientation_t;
26
 
27
extern CAM_Orientation_t CAM_Orientation;
280 killagreg 28
extern Point_t* GPS_pWaypoint;
355 holgerb 29
extern u8 MaxNumberOfWaypoints;    // should be 32
532 holgerb 30
extern u16 AbsoluteFlyingRange_m;    // Maximum distance that the MK is not allowed to exceed - keep zero if not used
369 holgerb 31
extern s16 AbsoluteFlyingAltitude; // Maximum altitude that the MK is not allowed to exceed - keep zero if not used
532 holgerb 32
extern u16 AutoDescendRange_m;
556 holgerb 33
extern GPS_Pos_t SimulationPosition; // the current GPS position in simulated mode
34
extern u8 SimulationFlags;
1 ingob 35
 
41 ingob 36
void GPS_Init(void);
215 killagreg 37
void GPS_Navigation(gps_data_t *pGPS_Data, GPS_Stick_t* pGPS_Stick);
222 holgerb 38
void CalcHeadFree(void);
548 holgerb 39
void UBX_Setup(void);
1 ingob 40
 
258 holgerb 41
#define EVENTFLAG_1_WP_CHANNEL    1
42
#define EVENTFLAG_2_WP_CHANNEL    2
43
 
41 ingob 44
#endif //__GPS_H
1 ingob 45