32 lines
1.0 KiB
C
32 lines
1.0 KiB
C
#ifndef GPS_INT_HAND
|
|
#define GPS_INT_HAND
|
|
|
|
#include "gps_ip_defines.h"
|
|
|
|
typedef struct {
|
|
uint32_t event_overflow_total;
|
|
uint32_t plic_drain_limit_total;
|
|
uint32_t plic_repeat_total;
|
|
uint32_t nav_epoch_coalesced_total;
|
|
uint32_t satellite_connected_total;
|
|
uint32_t satellite_lost_total;
|
|
uint32_t last_connected_prn;
|
|
uint32_t last_lost_prn;
|
|
uint64_t last_connected_tick;
|
|
uint64_t last_lost_tick;
|
|
} gps_runtime_diagnostics_t;
|
|
|
|
bool assign_tracking_from_result(const gps_acq_result_t* result);
|
|
void acq_intr_handler(unsigned char engine_id);
|
|
void gps_dispatch_irq(unsigned int irq_id);
|
|
void gps_irq_handler(void) GPS_IRQ_HANDLER_ATTR;
|
|
void gps_process_isr_events(void);
|
|
void gps_acq_scheduler_run(void);
|
|
void gps_background_task(void);
|
|
bool gps_take_nav_solve_period_ready(void);
|
|
void gps_get_runtime_diagnostics(gps_runtime_diagnostics_t* diagnostics);
|
|
void trck_intr_handler(volatile gps_trck_t* const trck_ip, volatile gps_frame_t *gps_frame_parsed, volatile int unsigned gps_subframe[10], unsigned char trck_ip_no);
|
|
|
|
|
|
#endif
|