X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2Fao.h;h=85b7825f759fdd73fd3473250933aaee92fa5200;hb=9789ca5e8caa9a013e804f307b9da380e147bd75;hp=d4df159553352b5da135e973b696ebb5d077042a;hpb=ee4919dd771b00e2a2dd1083c9528efa7baab50f;p=fw%2Faltos diff --git a/src/ao.h b/src/ao.h index d4df1595..85b7825f 100644 --- a/src/ao.h +++ b/src/ao.h @@ -661,6 +661,12 @@ ao_serial_getchar(void) __critical; void ao_serial_putchar(char c) __critical; +#define AO_SERIAL_SPEED_4800 0 +#define AO_SERIAL_SPEED_57600 1 + +void +ao_serial_set_speed(uint8_t speed); + void ao_serial_init(void); @@ -672,15 +678,22 @@ ao_serial_init(void); #define AO_GPS_NUM_SAT_SHIFT (0) #define AO_GPS_VALID (1 << 4) +#define AO_GPS_RUNNING (1 << 5) struct ao_gps_data { uint8_t hour; uint8_t minute; uint8_t second; uint8_t flags; - int32_t latitude; - int32_t longitude; - int16_t altitude; + int32_t latitude; /* degrees * 10⁷ */ + int32_t longitude; /* degrees * 10⁷ */ + int16_t altitude; /* m */ + uint16_t ground_speed; /* cm/s */ + uint8_t course; /* degrees / 2 */ + uint8_t hdop; /* * 5 */ + int16_t climb_rate; /* cm/s */ + uint16_t h_error; /* m */ + uint16_t v_error; /* m */ }; extern __xdata uint8_t ao_gps_mutex;